0

我们如何关闭由另一个应用程序打开的连接?我的应用程序没有关闭应用程序我需要找到一种方法来关闭与服务器的非活动连接。

企业库用于数据库 CRUD 操作,我需要一个快速的解决方法。我不能应用程序,我必须编写一个实用程序来关闭非活动且超过 15 分钟的连接。

谢谢你的帮助!

4

1 回答 1

0

也许你可以使用这样的东西

DECLARE @seconds int = 600
DECLARE @spid int
DECLARE @sql char(200)

DECLARE spid_cursor SCROLL INSENSITIVE CURSOR FOR
SELECT s.spid
FROM 
    master..sysprocesses s
WHERE 
    ( datediff( ss, s.last_batch, getdate())) > @seconds
    AND spid > 50 --only target user processes

OPEN spid_cursor

FETCH NEXT FROM spid_cursor INTO @spid

WHILE @@fetch_status = 0
BEGIN
    SELECT @sql = 'kill ' + convert(char(4), @spid)
    PRINT @sql
    EXEC(@sql)
    FETCH NEXT FROM spid_cursor INTO @spid
END

DEALLOCATE spid_cursor
GO
于 2013-10-09T21:15:42.813 回答