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?

62
demandé sur Dave DuPlantis 2008-10-21 20:07:35

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.

-6
répondu Michael Haren 2008-10-21 16:10:28

Utilisez l'outil sqlcmd pour exécuter le fichier..

sqlcmd -S myServer\instanceName -i C:\myScript.sql
161
répondu Gulzar Nazim 2008-10-21 16:09:07

Cet outil (Big SQL Script File Runner) sur CodePlex exécutera n'importe quel fichier de script de taille avec log et GUI.

16
répondu Alobidat 2014-06-01 11:59:21

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.

7
répondu PaloDravecky 2015-04-23 13:12:58

Pourquoi ne pas simplement utiliser DTS pour importer directement le fichier CSV?

0
répondu Aheho 2008-10-21 18:02:17