Exécution du script TSQL généré à partir de SSMS dans SQLCMD. À défaut de devis

9

J'essaie de déployer une base de données sur une machine en exécutant un script généré par l'outil "Générer des scripts" dans SQL Server Management Studio.

Voici la commande que j'ai lancée:

sqlcmd -S LOCALHOST\sqlexpress -I -U user -P ******** -i 
    C:\Rollouts\NI-9-25-2012_10-42-AM\Rollout.sql > rolloutlog.txt

Je reçois des erreurs comme celle-ci:

Sqlcmd: Erreur: erreur de syntaxe à la ligne 39488 près de la commande '' 'dans le fichier' C: \ Rollouts \ NI-9-25-2012_10-42-AM \ Rollout.sql '.

Lorsque je vois cette ligne avec un éditeur de texte, tous les signes pointent vers un problème de guillemets.

La ligne en question ressemble à ceci:

$ (''. cat-menu-new ''). slideDown ('' slow '');

Existe-t-il un commutateur avec lequel je devrais exécuter ou générer le script pour prendre en charge les guillemets dans le script?

munroan
la source
Le script ci-dessus ressemble à JQuery pas SQL ... ???
Mr.Brownstone
Êtes-vous également en train d'écrire les données? Pouvez-vous publier plus du script qui a été généré?
Mr.Brownstone
40k + script de ligne? Aie.
Aaron Bertrand
Haha pour clarifier un peu plus. Le script comprend du contenu HTML et javascript donc oui, ce contenu est du code jQuery. Nous avons fini par créer un script de sauvegarde beaucoup plus rapide et plus simple.
munroan

Réponses:

11

$(...) dénote une variable dans SQLCMD, c'est donc interpréter vos données comme une variable.

Utilisez l' -x option de ligne de commande pour désactiver les variables.

Jon Seigel
la source