DatabaseOperation_DBM - Kill inactive connection

DECLARE cConnections CURSOR READ_ONLY FAST_FORWARD FOR
   SELECT spid
     FROM master..sysprocesses p
          INNER JOIN master..syslogins l ON p.sid = l.sid
    WHERE l.loginname LIKE 'MSDOMAIN1\%' AND l.loginname NOT IN ('MSDOMAIN1\xzhang3', 'MSDOMAIN1\ouli', 'MSDOMAIN1\atian1')
      AND p.last_batch <= DATEADD(mi, -1, GETDATE())

DECLARE @l_ConnectionId INT,
        @l_Sql          VARCHAR(100)

OPEN cConnections

WHILE 1 = 1
BEGIN
   FETCH NEXT FROM cConnections INTO @l_ConnectionId
  
   IF @@FETCH_STATUS <> 0
      BREAK
  
   SET @l_Sql = 'KILL ' + CONVERT(VARCHAR, @l_ConnectionId)
   EXECUTE( @l_Sql )
END

CLOSE cConnections
DEALLOCATE cConnections

转载于:https://www.cnblogs.com/flysun0311/archive/2012/08/15/2639609.html

猜你喜欢

转载自blog.csdn.net/weixin_34168880/article/details/93714081