1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
| USEtempdb
GO
--创建测试表
IFOBJECT_ID('tempdb.dbo.#tbl_SPWho')IS NOTNULL
BEGIN
DROPTABLE tempdb.dbo.#tbl_SPWho
END
CREATE TABLE tempdb.dbo.#tbl_SPWho
(
spid SMALLINT,
ecidSMALLINT ,
[status]NVARCHAR(30),
loginameNVARCHAR(128),
hostName NVARCHAR(128),
blkCHAR(5),
dbname NVARCHAR(128),
cmdNVARCHAR(16),
request_id INT
)
--从系统存储过程中获取数据并插入临时表中
INSERT INTO tempdb.dbo.#tbl_SPWho
EXECsp_who
GO
--创建存放sp_who2信息的临时表
IFOBJECT_ID('tempdb.dbo.#tbl_SPWho2')IS NOTNULL
BEGIN
DROPTABLE tempdb.dbo.#tbl_SPWho2
END
CREATE TABLE tempdb.dbo.#tbl_SPWho2
(
spid SMALLINT,
[status]NVARCHAR(30),
[login]NVARCHAR(128),
HostNameNVARCHAR(128),
BlkBy CHAR(5),
DBNameNVARCHAR(128),
Command NVARCHAR(16),
CPUTimeINT ,
DiskIO INT,
LastBatchNVARCHAR(50),
ProgramName NVARCHAR(100),
SPID2SMALLINT ,
REQUESTID INT
)
--从系统存储过程中获取数据并插入临时表中
INSERT INTO tempdb.dbo.#tbl_SPWho2
EXECsp_who2
GO
--查看特定数据库的数据
SELECT spidAS SessionID,
ecid ASExecutionContextID ,
[status]AS ProcessStatus,
loginame ASLoginName ,
hostnameAS HostName,
blk ASBlockedBy ,
dbnameAS DatabaseName,
cmd ASCmomandType ,
request_idAS RequestID
FROM dbo.#tbl_SPWho
WHERE dbname ='AdventureWorks'
GO
--仅查看阻塞的数据
SELECT spidAS SessionID,
ecid ASExecutionContextID ,
[status]AS ProcessStatus,
loginame ASLoginName ,
hostnameAS HostName,
blk ASBlockedBy ,
dbnameAS DatabaseName,
cmd ASCmomandType ,
request_idAS RequestID
FROM dbo.#tbl_SPWho
WHERE blk >0
GO
--查看挂起的数据
SELECT spidAS SessionID,
ecid ASExecutionContextID ,
[status]AS ProcessStatus,
loginame ASLoginName ,
hostnameAS HostName,
blk ASBlockedBy ,
dbnameAS DatabaseName,
cmd ASCmomandType ,
request_idAS RequestID
FROM dbo.#tbl_SPWho
WHERE [STATUS]= 'suspended'
GO
|