所以我有一个脚本用于更新开发人员框SQL节点上的用户。它在SSMS中运行良好,但是当我从sql cmd运行它时,我得到一个"不正确的语法..."这一行出错:
EXEC('Drop USER "' + @name + '"')
@name正确地替换为我试图删除的用户名,它会在语法上引发错误。
答案 0 :(得分:0)
想出来。 sqlcmd要么将双引号解释为单引号,要么完全忽略它们。我认为前者,因为如果我试图运行:
DROP USER 'R715998-W10\MUD-CCTMRE.appool'
或
DROP USER "R715998-W10\MUD-CCTMRE.appool"
我得到完全相同的错误。
切掉方括号的双引号修复它:
EXEC('Drop USER [' + @name + ']')