SQLCMD脚本错误

时间:2014-07-10 00:31:42

标签: sqlcmd

我正在使用SQLCMD来运行一个270 MB的.sql文件。脚本文件(.sql)是使用Red Gate SQL Data Compare同步向导生成的。由于内存不足,我无法从SSMS运行它。我登录到服务器并转到命令提示符,它打开命令提示符

  

C:\用户\ USER1>

然后我输入

> C:\Users\USER1>SQLCMD -U sa -P PWD -d DATA_FEAT -i F:\SYNC\DATA-DATA_FEAT-20140709.sql -o F:\SYNC\DATA-DATA_FEAT-20140709result.txt

但是我得到了

  

Sqlcmd:错误:脚本错误。

我可以使用红门同步它而不会出错。红门运行相同的.sql文件

任何帮助

由于

1 个答案:

答案 0 :(得分:9)

我遇到了很多插入的大脚本。解决方案was over in this other answer:在文件中定期插入GO,以便在一个大型事务中不会构建所有内容。答案甚至得到了...... a RedGate forum thread的信息。

由于我使用Linux并且我的文件是每行一个语句,因此我很容易使用this answer中概述的sed来添加{{1}每隔几行,例如:

$ sed ': loop; n; n; n; n; n; n; n; n; n; a GO
n; b loop' < bigfile.sql > bigfile2.sql

每10行插入一次GO(GO脚本中n出现的次数),这可能是过度的。