变量执行动态SQL如下的存储过程:获取动态SQL的结果转化为SQL服务器
DECLARE @sqlCommand nvarchar(1000)
DECLARE @city varchar(75)
SET @city = 'London'
SET @sqlCommand = 'SELECT COUNT(*) FROM customers WHERE City = @city'
EXECUTE sp_executesql @sqlCommand, N'@city nvarchar(75)', @city = @city
如何使用COUNT(*)列值返回值的SP?
+1:你击败了我,需要声明一个变量,并将其标记为OUTPUT。 [欲了解更多信息,推荐阅读SQL Server动态SQL,请参阅动态SQL的诅咒和祝福](http://www.sommarskog.se/dynamic_sql.html#sp_executesql) – 2010-10-01 15:46:34
谢谢。 N'@ city nvarchar(75),@ cnt int OUTPUT'中的OUTPUT关键字就是我所缺少的。 – 2010-10-01 17:28:51
是否没有解决方案不需要向动态语句添加输出变量? – 2016-12-20 16:18:04