用SQL语句断开某个数据库的所有活动连接

USE master
go

IF EXISTS ( Select  *
            FROM    dbo.sysobjects
            Where   id = OBJECT_ID(N'[dbo].[P_KillConnections]')
                    AND OBJECTPROPERTY(id, N'IsProcedure') = 1 )
    Drop PROCEDURE [dbo].[P_KillConnections]
GO

Create PROC P_KillConnections @dbname VARCHAR(200)
AS
    DECLARE @sql NVARCHAR(500)
    DECLARE @spid NVARCHAR(20)

    DECLARE #tb CURSOR FOR
    Select spid=CAST(spid AS VARCHAR(20)) FROM master..sysprocesses Where dbid=DB_ID(@dbname)
    OPEN #tb
    FETCH NEXT FROM #tb INTO @spid
    WHILE @@fetch_status = 0
        BEGIN
            EXEC('kill '+@spid)
            FETCH NEXT FROM #tb INTO @spid
        END
    CLOSE #tb
    DEALLOCATE #tb
go

--修改一下
EXEC P_KillConnections '修改成自己的数据库'

上一篇: Python字符串/元祖/列表/字典互转
下一篇: Nginx 配置https透明代理https的相关注意事项
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 关闭 | [img]标签 关闭