首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

===求教关于存储过程变量声明的有关问题===

2012-01-09 
求教关于存储过程变量声明的问题我在存储过程中写了如下语句:asdeclare@iintdeclare@sqlvarchar(100

===求教关于存储过程变量声明的问题===
我在存储过程中写了如下语句: 
as 
declare @i int  
declare @sql varchar(1000) 

set @sql = ' select @i= coumt(1) from ...' 
exec(@sql)

sql2000里存储过程本身的保存都通过了, 
可是在执行程序的过程中,WEB系统却提示说‘须声明变量 '@i', 
请问这是怎么回事?

[解决办法]
你可能需要使用sp_executesql来运行带有参数的Sql语句,比如:

SQL code
/*只有传出的参数*/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

热点排行