积极答复者
\ 在 sp_executesql 和 EXEC 中有什么特殊意义?

问题
-
DECLARE @sql nvarchar(4000) = N' DECLARE @i int = 1; --\ WHILE @i > 0 SET @i = @i - 1; SELECT @i; '; EXEC sp_executesql @sql; EXEC(@sql); DECLARE @i int = 1; --\ WHILE @i > 0 SET @i = @i - 1; SELECT @i;
结果是(在 sp_executesql 和 EXEC 中,循环没有执行,神奇了,不要 \ 没有问题):
-----------
1(1 行受影响)
-----------
1(1 行受影响)
-----------
0(1 行受影响)