MS SqlServer之Exec和EXEC SP_EXECUTESQL

exec执行sql时字符串时,不能给变量赋值,如果要在sql里给变量赋值,请用EXEC SP_EXECUTESQL

示例:

通过 
SP_EXECUTESQL
的第2个参数来定义有哪些参数
输出的加OUTPUT
 
后面的参数为执行的时候,具体参数的数据。输出的加OUTPUT
 
 
 
 BEGIN
   DECLARE @Sql NVARCHAR(200);
   DECLARE @name  VARCHAR(10);
   SET @Sql = SELECT @name = name FROM test_dysql WHERE id=1;
   PRINT @Sql;
   EXEC SP_EXECUTESQL  @Sql, N@name VARCHAR(10) OUTPUT, @name OUTPUT;
   PRINT @name;
 END
 go
SELECT @name = name FROM test_dysql WHERE id=1
A

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。