SQL Server SqlPackage 变量:字符串变量需要引号吗?

SQL Server SqlPackage variables: are quotes needed around string variable?

当 运行 sqlpackage.exe 进行部署时,字符串变量是否需要用引号引起来?似乎 运行 两种方式都成功了。正确的语法是什么?

此处显示两个选项:

/v:CompanyName=ABCD

/v:CompanyName="ABCD"

资源:https://docs.microsoft.com/en-us/sql/tools/sqlpackage/sqlpackage?view=sql-server-ver15

@Jeroen Mostert 是对的。它与命令行更相关,而不仅仅是 SqlPackage。

如果字符串变量包含空格、等号、斜杠或任何其他会干扰选项语法的内容,则该值必须用“引号”括起来。

示例博客如下:https://www.addictivetips.com/windows-tips/enter-file-or-folder-paths-with-spaces-in-command-prompt-on-windows-10/

如果满足以下所有条件,则保留命令行中的引号字符:

  • 无 /S 开关(去掉引号)
  • 正好两个引号字符
  • 两个引号字符之间没有特殊字符,其中特殊字符是以下之一:& < >( ) @ ^ |
  • 两个引号之间有一个或多个空白字符
  • 两个引号之间的字符串是可执行文件的名称。

参考:https://ss64.com/nt/syntax-cmd.html

HTH.