Выполнение скрипта TSQL, сгенерированного из SSMS в SQLCMD. Сбой на цитаты

9

Я пытаюсь развернуть базу данных на компьютере, выполнив сценарий, сгенерированный средством «Создать сценарии» в SQL Server Management Studio.

Вот команда, которую я дал:

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

Я получаю такие ошибки:

Sqlcmd: Ошибка: синтаксическая ошибка в строке 39488 рядом с командой '' 'в файле' C: \ Rollouts \ NI-9-25-2012_10-42-AM \ Rollout.sql '.

Когда я просматриваю эту строку в текстовом редакторе, все знаки указывают на проблему с кавычками.

Рассматриваемая строка выглядит следующим образом:

$ ( 'Кошки-меню новый.' '') SlideDown ( '' медленно '');

Есть ли переключатель, который я должен выполнять или генерировать сценарий для поддержки кавычек в сценарии?

munroan
источник
Сценарий выше выглядит как JQuery, а не SQL ... ???
мистер Браунстоун
Вы также записываете данные? Можете ли вы опубликовать еще сценарий, который был сгенерирован?
мистер Браунстоун
40к + строчный скрипт? Уч.
Аарон Бертран
Ха-ха, чтобы уточнить немного больше. Сценарий включает в себя контент HTML и javascript, так что да, это код jQuery. В итоге мы создали скрипт резервного копирования, который намного быстрее и проще.
июня

Ответы:

11

$(...) обозначает переменную в SQLCMD, поэтому она интерпретирует ваши данные как переменную.

Используйте параметр -x командной строки, чтобы отключить переменные.

Джон Сайгель
источник