环境 数据库是 sql server2000 ,应用程序是asp.net(C#)
存储过程代码如下:
CREATE procedure proc_name
@a_id int , /*输入参数 id*/
@a_name varchar(50) output /*输出参数名称*/
asbegin --获得名称
--从用户表(users )中 选择 用户AID为@a_aid 的COME_IN字段
select @a_name = COME_IN from users where AID = @a_aid
end
GO为什么 a_name的返回值为空呢?
存储过程代码如下:
CREATE procedure proc_name
@a_id int , /*输入参数 id*/
@a_name varchar(50) output /*输出参数名称*/
asbegin --获得名称
--从用户表(users )中 选择 用户AID为@a_aid 的COME_IN字段
select @a_name = COME_IN from users where AID = @a_aid
end
GO为什么 a_name的返回值为空呢?
declare @name varchar(20)exec proc_name 0.15,@name OUTselect @name 看是否有值
如果没有,那么说明你的users 就没有值
所以返回为空
CREATE procedure proc_name
@a_id int , /*输入参数 id*/
@a_name varchar(50) output /*输出参数名称*/
as begin --获得名称
--从用户表(users )中 选择 用户AID为@a_aid 的COME_IN字段
select @a_name = COME_IN from users where AID = @a_aid select @a_nameend
可以按照一楼的。看能否取到值`
如果取到了。说明程序里写的有问题。没有取到只能说明没这条aid的数据
@a_id int , /*输入参数 id*/
@a_name varchar(50) output /*输出参数名称*/
as begin --获得名称
--从用户表(users )中 选择 用户AID为@a_aid 的COME_IN字段
select @a_name = isnull(COME_IN,'') from users where AID = @a_aid -- 加上是否为空的判断.
end
GO
@a_id int , /*输入参数 id*/
@a_name varchar(50) output /*输出参数名称*/
as begin --获得名称
--从用户表(users )中 选择 用户AID为@a_aid 的COME_IN字段
select @a_name = isnull(COME_IN,'') from users where AID = @a_aid -- 加上是否为空的判断.
end
GO