===求教关于存储过程变量声明的问题===
我在存储过程中写了如下语句:
as
declare @i int
declare @sql varchar(1000)
set @sql = ' select @i= coumt(1) from ...'
exec(@sql)
sql2000里存储过程本身的保存都通过了,
可是在执行程序的过程中,WEB系统却提示说‘须声明变量 '@i',
请问这是怎么回事?
[解决办法]
你可能需要使用sp_executesql来运行带有参数的Sql语句,比如:
/*只有传出的参数*/declare @t intset @t=0execute sp_executesql N'select @count=count(1) from pubs.dbo.employee', N'@count int output', @t output
[解决办法]
看看这个
http://www.cnblogs.com/edobnet/archive/2005/04/24/144509.html