存储过程 赋值

来源:百度知道 编辑:UC知道 时间:2024/09/22 05:31:22
Create procedure pr_GetTotal
@total int output,
@tblName varchar(255)
as
declare @sql varchar(255)
set @sql = 'select count(1) from ' + @tblName
--这里我想将@sql执行后的结果赋值给@total,该怎么写?--
是要得到@sql执行后的结果,也就是 要得到某个表的记录数量。

我知道了。正确答案:
exec sp_executesql @sql, N'@total int output',@total output
而且 @sql 必须是 text,ntext,或者nvarchar类型。

你说的这个应该用临时表吧。
我没有时间帮你写存储过程来测试。你可以看看
http://topic.csdn.net/t/20050804/14/4188705.html
应该和你提出的问题相似。
好运!

那我就不知道了,我一般都是直接 exec @sql,然后用 go ,这个存储过程的结果就可以直接拿来用了,