[跪求帮助]关于SQL存储过程的问题.调试存储过程是正常的,但在程序里调用得不到结果集
CREATE PROCEDURE [dbo].[wbjl_ms_add]
@userid char(20) ,
@rid char(20) ,
@content char(400) ,
@jobtag char(20)
as
declare @retcode int,@retdesc char(50)
select @retcode=1,@retdesc='账号异常,请重新登陆'
if exists(select 1 from tbl_user where userd and rid=@rid)
begin
insert into tbl_ms(userid,rid,content,jobtag) values(@userid,@rid,@content,@jobtag)
if(@@error=0)
begin
select @retcode=0,@retdesc='发布成功'
end
else
begin
select @retcode=-1,@retdesc='数据库错误'
end
end
select @retcode as retcode,@retdesc as retdesc
上面这个存储过程,我在SQL management里调试是正常的,返回的retdesc能正常显示,
但在JSP里调用这个存储过程,rs得不到结果集,无论是statement和preparement都不行.
我怀疑是不是sqljdbc的版本问题?换了很多个SQLJDBC,解决不了问题.
SQL版本是2005的,求帮助
[解决办法]
你可以使用带输出参数的存储过程CREATE PROCEDURE [dbo].[wbjl_ms_add]@userid char(20) ,@rid char(20) ,@content char(400) ,@jobtag char(20),@retcode int output,@retdesc varchar(100) outputasdeclare @retcode int,@retdesc char(50)select @retcode=1,@retdesc='账号异常,请重新登陆'if exists(select 1 from tbl_user where userd and rid=@rid)begin insert into tbl_ms(userid,rid,content,jobtag) values(@userid,@rid,@content,@jobtag) if(@@error=0) begin select @retcode=0,@retdesc='发布成功' end else begin select @retcode=-1,@retdesc='数据库错误' endend