zoukankan      html  css  js  c++  java
  • Microsoft SQL Server 查询连接数和关闭连接数

    本文所讲的关闭MS  SQL Server数据库连接不是指使用MS SQL Server Management Studio 去关闭某个已经连接的窗口。

    这样不能关闭某些连接,比如,用Java JDBC或者其它客户端连接数据库所产生的连接MS SSMS就无法关闭。

    1. 查询指定数据库有哪些连接(connection)

    SELECT * FROM 
    [Master].[dbo].[SYSPROCESSES] WHERE [DBID] 
    IN 
    (
      SELECT 
       [DBID]
      FROM 
       [Master].[dbo].[SYSDATABASES] 
      WHERE 
       NAME='test'  ---"test"为你要查询的数据库的名字
    )

    2.查询整个数据库系统所有的数据库有多少连接,以分组统计的方式显示。

    select 
        db_name(dbid) as [Database Name], 
        count(dbid) as [No Of Connections],
        loginame as [Login Name]
    from
        sys.sysprocesses
    where 
        dbid > 0
    group by 
        dbid, loginame

    3.关闭指定数据库的连接

    set nocount on
    declare @databasename varchar(100)
    declare @query varchar(max)
    set @query = ''
    
    set @databasename = 'test' --“test”为数据库的名字
    if db_id(@databasename) < 4
    begin
        print 'system database connection cannot be killeed'
    return
    end
    
    select @query=coalesce(@query,',' )+'kill '+convert(varchar, spid)+ '; '
    from master..sysprocesses where dbid=db_id(@databasename)
    
    if len(@query) > 0
    begin
    print @query
        exec(@query)
    end
  • 相关阅读:
    HDU4465 Candy
    《有关概率和期望问题的研究》读书笔记(完成度:40%)
    HDU5583 Kingdom of Black and White
    Gym100548F Color
    HDU6035 Colorful Tree
    Echarts笔记
    springMVC
    Struts2
    SSH框架学习中遇到的问题
    I/O流
  • 原文地址:https://www.cnblogs.com/majestyking/p/11598712.html
Copyright © 2011-2022 走看看