E' mai capitato di aver la necessità di visualizzare le connessioni attive su un determinato SQL Server via mmc o Query Analizer? A me si. Per far questo è necessario avviare la stored procedure sp_who2. Essendo una stored procedure di sistema non è possibile modificarla a patto di non avere credenziali di tipo amministrativo.
E questo è proprio quello che è sucecesso anche ad un mio collega ("Open" Skinny). Da grande appassionato di Transact SQL mi ha proposto una soluzione al problema davvero geniale. Query su tabella virtuale popolata dai dati provenienti dalla stored.
CREATE TABLE #WHO2(
SPID INT,
Status VARCHAR(50),
Login VARCHAR(100),
HostName VARCHAR(255),
BlkBy VARCHAR(100),
DBName VARCHAR(100),
Command VARCHAR(100),
CPUTime FLOAT,
DiskIO FLOAT,
LastBatch VARCHAR(50),
ProgramName VARCHAR(255),
SPID2 INT
)
INSERT INTO #WHO2 EXEC sp_who2
SELECT * FROM #WHO2 WHERE STATUS ='RUNNABLE'ORDER BY LOGIN
DROP TABLE #WHO2
L'intero articolo può essere letto qui.