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

存储过程跟游标

2013-11-15 
存储过程和游标我现在有很多个select语句,每个select都返回一个结果集。我把这些select放在一个存错过程中。

存储过程和游标
我现在有很多个select语句,每个select都返回一个结果集。我把这些select放在一个存错过程中。我的问题是,怎么通过游标把该存错过程返回的多个结果集遍历出来,要求每个结果集都分开,因为这些结果要返回给java程序使用。(在SQL Server中) sql?server
[解决办法]
每次select完一个语句用下面语句判断
select col.... from table1 where () 
if @@error<>0 
begin
   set @errNum=1
    goto errHandle
end

select col.... from table2 where () 
if @@error<>0 
begin
   set @errNum=2
    goto errHandle
end

select 0
return 

errHandle:
select @errNum

如果select 结果大于0,说明有错误.
[解决办法]
如果两个结果集的列序及类型一致,那用union

如果不一样,那用一个中间表吧, java程序直接访问中间表
[解决办法]
用临时表实现,在执行存储过程前创建临时表,存储过程中所有select ..改为
 insert into [临时表] select ..
存储过程执行后,直接查询临时表.

热点排行