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

SQL中存储过程存在多个EXEC返回值出现有关问题

2013-09-06 
SQL中存储过程存在多个EXEC返回值出现问题存储过程存在多个EXECEXEC a1EXEC a2EXEC a3但是 JAVA获取返回值

SQL中存储过程存在多个EXEC返回值出现问题
存储过程存在多个EXEC

EXEC a1
EXEC a2
EXEC a3

但是 JAVA获取返回值渠道的是a1的值 
请问如何解决
[解决办法]

引用:
Quote: 引用:

把前2个exec中的结果集,分别插入到临时表中,就不会再返回数据。示例:
exec('select field into #temp1 from tb1 where id = 1')
exec('select field into #temp2 from tb2 where id = 2')
exec('select field from tb3 where id = 3')


我现在用的就是你这个方法,觉得太麻烦了 才上来求救的.

--#1.呵呵,应该无其它方法。
--#2..NET里可以得到3个结果集,你直接取第三个用就可以。估计JAVA也可以。
--#3.重新定义前2个存储过程,不返回结果集。
[解决办法]
把结果插入到临时表,是个好办法,然后再select出你想要的临时表结果
create table #temp1(...)
create table #temp2(...)
create table #temp3(...)

insert into #temp1
exec a1
insert into #temp2
exec a2
insert into #temp3
exec a3

select * from #temp1 (或temp2或temp3)

热点排行