

如果需要解决分离数据库时脱机处理太慢的问题,就会用到强制关闭SQL Server数据库连接的方法,下面就将为您介绍该方法的步骤,希望对您有所启迪.
在SQL Server中备份/还原/分离/脱机/删除指定数据库时, 如果有其他用户正在使用此数据库时, SQL Server为了防止数据异常, 会报错而终止你的操作.
当然, 在SQL 2005里, 在做[分离/删除]数据库时提供了一个选项[关闭所以连接]供勾选(SQL 2000好像没有哦), 然而[备份/还原]操作却没有此选择, 也许你会说可以先[脱机数据库]再做[备份还原]操作, 对, 但你会发现[脱机]处理太慢了J, 那在SQL2005以及SQL 2000下有哪些方法可以解决此问题呢?
2.解决方法:
1. 拔掉此机器的网线. 呵呵, 这种方法立竿见影, 但是可能对其他的连接造成影响.
2. 通知连接至此数据库的用户断开SQL Server数据库连接. 如果可能连接的用户很多或不知道哪个用户正在连接的话就不可行了.
3. 在SQL Server中用命令StopLogin强行断开SQL Server数据库连接.详细说明如下:
使用说明:
StopLogin @Dname
其中@Dname为要强行断开SQL Server数据库连接的数据库名称, 如果您想断开数据库’DEMO’的所有连接,则只要在查询分析器中执行[StopLogin ’DEMO’]即可, 如果您要断开所有数据库的连接进行维护的话则只要执行[StopLogin ’’]即可.
下面用例子说明:
EX1. 使用StopLogin强行断开连接前后SQL的执行结果对比
首先, 我们执行如下SQL语句:
SELECT *** * FROM INVMB
执行结果为:
查询已成功执行
下面我们来执行如下SQL语句:
StopLogin ‘DEMO2’
执行结果为:

由于数据库’DEMO2′ 离线,无法打开该数据库。
【编辑推荐】
sql server数据库文件的压缩方法
带您了解SQL Sever数据库文件
sql server字符串的类型
sql server字符串截取实例分析
sql server字符串函数分类详解
如何打开和关闭数据库连接?显示打开和关闭数据库连接有什么好处?
打开就是调用open方法,关闭就是调用close方法,例如:(1)首先建立连接:sqlconnection conn =new sqlconnection()。 (2)然后打开连接()。 中间就是你处理的事情的代码,处理完后看。 (3)最后就是关闭连接()。 好处就是:如果你没关闭的话,可能打开的多了,数据库连接就满了或者打开的多了速度变慢。 目前有许多数据库产品,如Oracle、Sybase、Informix、Microsoft SQL Server、Microsoft Access、Visual FoxPro等产品各以自己特有的功能,在数据库市场上占有一席之地。 下面简要介绍几种常用的数据库管理系统:① Oracle数据库系统:Oracle是一个最早商品化的关系型数据库管理系统,也是应用广泛、功能强大的数据库管理系统。 Oracle作为一个通用的数据库管理系统,不仅具有完整的数据管理功能,还是一个分布式数据库系统,支持各种分布式功能,特别是支持InterNet应用。 ② Sybase数据库系统:基于Client/Server体系结构的大型网络数据库系统。 采用单线程技术进行查询,开销小,利用率高,支持分布式处理。 ③ MS SQL Server:是一种典型的关系型数据库管理系统,可以在许多操作系统上运行。 目前最新版本的产品为Microsoft SQL Server 2005,它具有可靠性、可伸缩性、可用性、可管理性等特点,为用户提供完整的数据库解决方案。 ④ Microsoft Access:是在Windows环境下非常流行的桌面型数据库管理系统。 使用Microsoft Access无需编写任何代码,只需通过直观的可视化操作就可以完成大部分数据管理任务。
如何通过代码断开某SQL Server数据库应用程序连接?
exec sp_detach+db 数据库名字, false, false
如何断开数据库
右键点数据库,选Detach菜单。(注意如果有连接正在访问数据库,需要在此功能内将连接断开)
发表评论