You administer a Microsoft SQL Server 2012.
A process that normally runs in less than 10 seconds has been running for more than an hour.
You examine the application log and discover that the process is using session ID 60.
You need to find out whether the process is being blocked. Which Transact-SQL statement should you use?
A.
EXEC sp_who 60
B.
SELECT * FROM sys.dm_exec_sessions WHERE sessionid = 60
C.
EXEC sp_helpdb 60
D.
DBCC INPUTBUFFER (60)
Explanation:
http://msdn.microsoft.com/en-us/library/ms174313.aspx
http://msdn.microsoft.com/en-us/library/ms176013.aspx
http://msdn.microsoft.com/en-us/library/ms178568.aspx
http://msdn.microsoft.com/en-us/library/ms187730.aspx
I think is also correct B, but probably the best choice is A in this context
B is incorrect because there isn’t a column named sessionid. It’s called session_id
@John:
Correct answer is A. The DMV “sys.dm_exec_sessions” will not give you this info; you’d need to issue:
SELECT * FROM sys.dm_exec_requests WHERE sessionid = 60