SQL Server-exécution de fichiers de script volumineux
J'ai une table de base de données sur un serveur de développement qui est maintenant entièrement remplie après l'avoir configurée avec une routine d'importation pour un fichier CSV contenant 1,4 million de lignes.
J'ai exécuté L'Assistant de publication de base de données sur la table, et maintenant j'ai un script SQL 286MB sur ma machine locale. Le problème est, Je ne peux pas comprendre comment l'exécuter. Si je le charge dans SQL Server Management Studio Express, j'obtiens une fenêtre d'alerte indiquant "l'opération n'a pas pu être terminée".
Des idées sur comment Je peux faire fonctionner ce script SQL?
5 réponses
Exécuter quelque chose d'aussi grand dans une seule transaction n'est pas une bonne idée. Par conséquent, je recommande de diviser le fichier en morceaux plus petits et plus faciles à gérer.
Une autre option consiste à examiner certaines des autres façons d'importer directement des données CSV.
Utilisez l'outil sqlcmd pour exécuter le fichier..
sqlcmd -S myServer\instanceName -i C:\myScript.sql
Cet outil (Big SQL Script File Runner) sur CodePlex exécutera n'importe quel fichier de script de taille avec log et GUI.
Ajouter à la réponse de Gulzar Nazim:
Si vous obtenez toujours un échec, essayez de spécifier la codepage de votre fichier SQL en utilisant l'option -f
:
sqlcmd -S myServer\instanceName -d databaseName -i C:\myScript.sql -f 65001
J'essayais d'importer un .vider le fichier de SQLite (UTF-8 par défaut), et sqlcmd a continué à lancer une erreur après avoir rencontré le premier caractère spécial. -f 65001
l'a réparé pour moi.
Pourquoi ne pas simplement utiliser DTS pour importer directement le fichier CSV?