我已经设置了一个简单的 sqlcmd 脚本。内容如下。
use $(dbname);
select * from $(tablename)
然后我运行以下 Invoke SQLCMD
$SQLCMDVarArr = "dbname='MyDatabase'", "Tablename='MyTable'"
INVOKE-SQLCMD -ServerInstance MyServer\MyInstance -inputFile '\\MyShare\Database\Sprints\csrtemp2\csrtest.sql' -variable $SQLCMDVarArr
我得到了错误:
INVOKE-SQLCMD : Incorrect syntax near 'MyDatabase'.
我直接从 invoke-sqlcmd get-help 示例中提取了语法。谁能告诉我这有什么问题?
谢谢,
根据要求,这是在 Windows Server 2008 R2 上运行的
所以事实证明,get-help invoke-sqlcmd -example 将数组变量显示为使用 'dbname="MyDatabase"' 作为语法。但是,这会产生上述错误,但是如果您交换引号位置以使变量使用“dbname ='MyDatabase'”,则脚本将起作用。