我正在运行一个从 powershell 脚本调用的 T-SQL 脚本,该脚本包含一个文本行,其中包含一个包含 $(MV) 的序列。
当我运行脚本时,我收到错误“'MV' scripting variable not defined”。我认为这是因为它将 $(MV) 字符串解释为变量而不是文本字符串的一部分。
如何将美元符号写为转义序列?这可能在字符串中吗?
我正在运行一个从 powershell 脚本调用的 T-SQL 脚本,该脚本包含一个文本行,其中包含一个包含 $(MV) 的序列。
当我运行脚本时,我收到错误“'MV' scripting variable not defined”。我认为这是因为它将 $(MV) 字符串解释为变量而不是文本字符串的一部分。
如何将美元符号写为转义序列?这可能在字符串中吗?
您是否使用sqlcmd执行脚本?它将解释 $(variablename) 并尝试扩展它。
您可以使用 -x 命令行选项禁用此功能。
哦,如果您使用Invoke-Sqlcmd,您可以使用 -DisableVariables 参数。
我假设您不想完成 sqlcmd 变量替换。如果您只是试图让 $ 通过 Powershell,请使用反引号 (`$),就像在另一个建议中一样。
您可以使用反引号字符在 PowerShell 中转义 $ 符号:
`$