我有一个存储过程,该过程返回多个结果集。我正在尝试将所有结果的列值检索到临时表中。有可能吗?
我的存储过程返回如下列。我大约返回了10多个结果集,每个结果集都有一个tid
列。
是否可以选择临时表中的tId
。
答案 0 :(得分:0)
仅当每个行集的输出定义与表模式匹配时(而不是您的情况),您才将所有数据集收集到一个表中,因此,我建议在存储过程中准备统一的数据集,并将其单独输出或作为输出表变量输出。
create procedure proc_multi as
begin
select 1 id;
select 2 id;
end;
create table #t (id int);
insert into #t
exec proc_multi;
select * from #t;
id
-----------
1
2
(2 rows affected)