在T-sql脚本中转​​义$(美元符号)的序列

时间:2012-09-06 09:24:16

标签: tsql powershell

我正在运行一个从powershell脚本调用的T-SQL脚本,该脚本包含一个文本行,其中包含一个包含$(MV)的序列。

当我运行脚本时,我得到错误“'MV'脚本变量未定义。”我假设是因为它将$(MV)字符串解释为变量而不是文本字符串的一部分。

如何将美元符号写为转义序列?这可能是一个字符串吗?

2 个答案:

答案 0 :(得分:8)

您是否使用sqlcmd执行脚本?它将解释$(variablename)并尝试扩展它。

您可以使用-x命令行选项禁用它。

哦,如果你使用的是Invoke-Sqlcmd,你可以使用-DisableVariables参数。

我假设您不想完成sqlcmd变量替换。如果你只是试图获得$过去的Powershell,请使用反向标记(`$),如同另一个建议。

答案 1 :(得分:2)

您可以使用反引号字符转义PowerShell中的$符号:

`$