sqlcmd сталкивается с ошибкой при анализе моего файла .sql

Я вызываю sqlcmd следующим образом:

sqlcmd -S SERVERNAME\SQLEXPRESS -i "C:\Documents and Settings\user\Desktop\data\bigDB.sql"

И я получаю ошибку во время выполнения скрипта:

Sqlcmd: Error: Syntax error at line 86626 near command '%' in file 'C:\Documents
 and Settings\user\Desktop\data\bigDB.sql'.

Как заставить sqlcmd игнорировать текущую запись и продолжать работу? Я думаю, что мог бы отредактировать bigDB.sql и включить директиву :On Error Ignore вверху, но файл bigDB.sql имеет размер 5 ГБ - я не могу редактировать.

Или как я могу перейти к определенной строке и удалить плохую запись? Спасибо за помощь.


person Utpal Mattoo    schedule 23.07.2012    source источник
comment
Вы можете отредактировать bigdb.sql с помощью редактора, который не считывает весь файл в память. Может УльтраEdit.   -  person joshp    schedule 24.07.2012
comment
UltraEdit полезен, но sqlcmd считает, что в файле сценария .sql (автоматически сгенерированном с помощью SSMS) есть синтаксические ошибки, и постоянно останавливается. Есть ли другая утилита в SQL Server, которая, например, не заботится о «%» во вставленном значении столбца и продолжает выполнение скрипта?   -  person Utpal Mattoo    schedule 24.07.2012
comment
См. мой комментарий в другом вопросе: проблема здесь не в sqlcmd, а в том, как вы управляете исходным кодом и развертыванием. И если вы можете просто удалить плохие записи, не затрагивая ваш скрипт, зачем вообще нужны эти записи?   -  person Pondlife    schedule 28.07.2012
comment
Было бы лучше исправить проблему с SSMS, когда она генерирует сценарий, чем игнорировать операторы с «%» в них. Разве реальный вопрос не в том, как сделать операторы вставки сценария SSMS исполняемыми, когда данные содержат «%»?   -  person James L.    schedule 28.07.2012