码迷,mamicode.com
首页 > 数据库 > 详细

SQL Server检索存储过程的结果集

时间:2019-07-30 10:36:53      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:插入   介绍   arch   sel   执行   exec   --   declare   执行存储过程   

目的:检索过滤执行存储过程的结果集

如下介绍两个常用的方法,但是都需要申明表结构;不知道是否有更简便的方法,如有更好的方法,请不吝赐教。

以系统存储过程sp_who2为例:

方法1:使用临时表

 1 --1. 创建临时表
 2 CREATE TABLE #tmp(
 3         SPID int,
 4         Status nvarchar(50), 
 5         Login nvarchar(50), 
 6         HostName nvarchar(50), 
 7         BlkBy nvarchar(50), 
 8         DBName nvarchar(50), 
 9         Command nvarchar(50),
10         CPUTime nvarchar(50), 
11         DiskIO nvarchar(50), 
12         LastBatch nvarchar(50), 
13         ProgramName nvarchar(50),
14         SPID2 int, 
15         REQUESTID int
16     )
17 
18 --2. 执行存储过程并将存储过程的返回结果集插入临时表
19 insert into #tmp exec sp_who2
20 
21 --3. 检索、查询
22 select * from #tmp where Status = sleeping
23 
24 --4. 清除临时表
25 DROP TABLE #tmp

方法2:使用表变量

1 --1. 申明表变量
2 declare @tempTable Table(SPID int,Status nvarchar(50), Login nvarchar(50), HostName nvarchar(50), BlkBy nvarchar(50), DBName nvarchar(50), Command nvarchar(50),
3 CPUTime nvarchar(50), DiskIO nvarchar(50), LastBatch nvarchar(50), ProgramName nvarchar(50), SPID2 int, REQUESTID int)
4 
5 --2. 执行存储过程并将存储过程的返回结果集插入表中
6 insert into @tempTable exec sp_who2
7 
8 --3. 检索、查询
9 select * from @tempTable where Status = sleeping

 

SQL Server检索存储过程的结果集

标签:插入   介绍   arch   sel   执行   exec   --   declare   执行存储过程   

原文地址:https://www.cnblogs.com/Juning/p/11268409.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!