sqlserver下Kill 所有连接到某一数据库的连接

要想在SQL Server中断开所有连接到某一数据库的连接,可以使用以下步骤:

  1. 首先,必须获得需要被断开连接的数据库的ID:
USE master;
SELECT database_id, name FROM sys.databases WHERE name = 'DBName';

这里需要将 DBName 替换为你需要断开连接的数据库的名称。通过执行以上SQL查询语句,会返回类似以下结果:

database_id name
----------- -------------
8             DBName

database_id 是你需要的数据库的ID。

  1. 使用上一步中获得的数据库ID,执行以下操作,KILL 所有连接到该数据库的进程:
USE master;
DECLARE @kill varchar(8000) = '';  
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
FROM sys.dm_exec_sessions  
WHERE database_id = 8 /*将8替换为你要断开的数据库的ID*/   

EXEC(@kill);

这里需要将 8 替换为你需要断开连接的数据库的ID。执行以上SQL查询语句,将会断开所有连接到该数据库的连接。

示例1:

假设我需要断开连接到名为 TestDB 的数据库的所有连接,可以先执行以下查询语句获取该数据库的ID:

USE master;
SELECT database_id, name FROM sys.databases WHERE name = 'TestDB';

返回结果类似以下内容:

database_id name
----------- -------------
13          TestDB

获取到了 TestDB 数据库的ID为 13,现在可以执行以下代码来断开该数据库的所有连接:

USE master;
DECLARE @kill varchar(8000) = '';  
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
FROM sys.dm_exec_sessions  
WHERE database_id = 13 /*将13替换为你要断开的数据库的ID*/   

EXEC(@kill);

以上代码可以将所有连接到 TestDB 数据库的连接都断开。

示例2:

假设我需要断开连接到名为 Sales 的数据库的所有连接,可以先执行以下查询语句获取该数据库的ID:

USE master;
SELECT database_id, name FROM sys.databases WHERE name = 'Sales';

返回结果类似以下内容:

database_id name
----------- -------------
5           Sales

获取到了 Sales 数据库的ID为 5,现在可以执行以下代码来断开该数据库的所有连接:

USE master;
DECLARE @kill varchar(8000) = '';  
SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
FROM sys.dm_exec_sessions  
WHERE database_id = 5 /*将5替换为你要断开的数据库的ID*/   

EXEC(@kill);

以上代码可以将所有连接到 Sales 数据库的连接都断开。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:sqlserver下Kill 所有连接到某一数据库的连接 - Python技术站

(0)
上一篇 2023年5月17日
下一篇 2023年5月17日

相关文章

  • 总结下sqlserver group by 的用法

    在SQL Server中,GROUP BY语句用于将结果集按照一个或多个列进行分组,并对每个组进行聚合计算。本攻略将介绍GROUP BY语句的用法,包括语法、示例和注意事项。 GROUP BY语句的语法 GROUP BY语句的基本语法如下: SELECT column1, column2, …, aggregate_function(column_nam…

    SqlServer 2023年5月17日
    00
  • SQLserver2014(ForAlwaysOn)安装图文教程

    SQL Server 2014 (For AlwaysOn) 安装图文教程 环境准备 在开始安装 SQL Server 2014 For AlwaysOn 之前,你需要确保系统符合以下条件: 操作系统:Windows Server 2008 R2 SP1 或更高版本 内存:至少 4GB 硬盘空间:至少 6GB 此外,如果需要使用 AlwaysOn 高可用性组…

    SqlServer 2023年5月17日
    00
  • SQL Server 2008 存储过程示例

    以下是SQL Server 2008 存储过程示例的详细攻略: 步骤一:创建存储过程 可以使用以下步骤创建存储过程: 打开SQL Server Management Studio。 在“新建查询”窗口中输入以下代码: sql CREATE PROCEDURE [存储过程名称] AS BEGIN — 存储过程代码 END 其中,[存储过程名称] 是要创建的存…

    SqlServer 2023年5月16日
    00
  • 在VMWare中配置SQLServer2005集群 Step by Step(一) 环境

    以下是在VMWare中配置SQL Server 2005集群的完整攻略,包括环境配置和示例说明: 环境 在配置SQL Server 2005集群之前,需要先准备好以下环境: 安装好VMWare虚拟机软件,并创建好两台虚拟机。 在两台虚拟机中安装好Windows Server 2003操作系统,并进行基本配置。 在两台虚拟机中安装好SQL Server 200…

    SqlServer 2023年5月16日
    00
  • 使用Sqlserver事务发布实现数据同步(sql2008)

    使用SQL Server事务发布可以实现数据同步,将数据从一个数据库同步到另一个数据库。以下是使用SQL Server事务发布实现数据同步的完整攻略,包括创建发布者、创建订阅者、配置发布和订阅、测试数据同步。 创建发布者 打开SQL Server Management Studio(SSMS)并连接到要作为发布者的SQL Server 2008实例。 在“对…

    SqlServer 2023年5月16日
    00
  • SqlServer 英文单词全字匹配详解及实现代码

    SqlServer 英文单词全字匹配详解及实现代码 在 SQL Server 中,我们可以使用 LIKE 运算符来进行模糊匹配,但是有时候我们需要进行全字匹配,即只匹配完整的单词,而不是单词的一部分。本文将详细介绍如何在 SQL Server 中实现英文单词的全字匹配。 方法一:使用空格分隔单词 我们可以使用空格将单词分隔开来,然后使用 LIKE 运算符进行…

    SqlServer 2023年5月16日
    00
  • 在SQLserver数据库之间进行传表和传数据的图文教程

    在SQL Server数据库之间传输表和数据是常见的任务,可以使用多种方法来完成。以下是在SQL Server数据库之间传输表和数据的完整攻略,包括使用SQL Server Management Studio和使用bcp命令行实用程序。 使用SQL Server Management Studio传输表和数据 SQL Server Management St…

    SqlServer 2023年5月16日
    00
  • PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例

    在PHP中连接MSSQL2008/2005数据库需要使用SQLSRV扩展。本文将提供一个详细的攻略,包括SQLSRV扩展的安装、配置和两个示例说明,以帮助开发人员更好地理解和使用这个扩展。 SQLSRV扩展的安装 以下是SQLSRV扩展的安装步骤: 下载SQLSRV扩展:从Microsoft官网下载SQLSRV扩展的最新版本,下载地址为:https://ww…

    SqlServer 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部