Sql server 2005 <;SQL脚本>;无效的列名';XXXXXXXX和x27;
我有一个sql脚本称为“abc.sql”,我正在使用类似sqlcmd的批处理文件调用它Sql server 2005 <;SQL脚本>;无效的列名';XXXXXXXX和x27;,sql-server-2005,sql-scripts,Sql Server 2005,Sql Scripts,我有一个sql脚本称为“abc.sql”,我正在使用类似sqlcmd的批处理文件调用它 调用批处理脚本 script.bat arg1 arg2 成批 param1=%1 param2=%2 然后调用SQL脚本,比如 sqlcmd -S server -i abc.sql -v var1=%param1% var2=%param2% 在SQL脚本中 DECLARE @node as sysname; DECLARE @serv as sysname; SET @node = $(va
script.bat arg1 arg2
param1=%1
param2=%2
sqlcmd -S server -i abc.sql -v var1=%param1% var2=%param2%
DECLARE @node as sysname;
DECLARE @serv as sysname;
SET @node = $(var1);
SET @serv = $(var2);
同样,即使标量变量@node和@serv被声明和设置。。。我收到一个错误,提示
必须声明标量变量“@node”
您需要在脚本中包含引号:
SET @node = '$(var1)';
SET @serv = '$(var2)';
伙计们,还有一个问题:我编辑了我的问题。。。请让我知道,如果我必须把它放在另一个postFil,我用另一个问题编辑了我的问题。。。如果你有任何想法,请一定告诉我。@Rahul,我已经在SQLServer2008R2上测试了相同的场景,并且成功了。请检查您是否在abc.sql中包含了整个脚本,可能是您输入了声明或输入了一些错误。如果没有,请用完整的脚本编辑您的问题,以便我可以在我的环境中测试它。