如何将存储过程返回的结果集放入一个表中

说明:
本文介绍的是如何把EXEC存储过程后返回的结果集存入一个表中。

语句:
INSERT <TableName> EXEC <Command>
 

例子:

exec master.dbo.xp_msver

该语句返回以下结果集
ndex     Name     Internal_Value     Character_Value
1     ProductName     NULL     Microsoft SQL Server
2     ProductVersion     524288     8.00.2040
3               


创建一个表来存储该结果集
create table SqlServerVersion (

  Idx varchar(
200),
  Name  varchar(
200),
  InternalValue varchar(
200),
  CharacterValue varchar(
200)

)

最后执行下面的语句就能将结果集插入表中了
insert SqlServerVersion exec master.dbo.xp_msver

select 
* from SqlServerVersion where Name = 'ProductVersion'

select CharacterValue from SqlServerVersion 
where Name = 'ProductVersion'
--返回:
8.00.2040

不过这样做要有个先决条件,就是存储过程中不能再有别的存储过程,否则不会成功

posted on 2008-07-18 09:04  畅想者  阅读(2856)  评论(0编辑  收藏  举报

导航