首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

[跪求帮助]关于SQL存储过程的有关问题.调试存储过程是正常的,但在程序里调用得不到结果集

2012-04-16 
[跪求帮助]关于SQL存储过程的问题.调试存储过程是正常的,但在程序里调用得不到结果集CREATE PROCEDURE [db

[跪求帮助]关于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的,求帮助

[解决办法]

SQL code
你可以使用带输出参数的存储过程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 

热点排行