以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]窗口按扭恢复SQL数据库  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=55517)

--  作者:33888
--  发布时间:2014/8/18 15:09:00
--  [求助]窗口按扭恢复SQL数据库

RESTORE DATABASE 新数据库名 FROM DISK=\'bak文件完整路径\' WITH REPLACE

 

出现下面的错误:

 

RESTORE DATABASE 操作异常终止。
因为数据库正在使用,所以未能获得对数据库的排它访问权。

 

如何处理?


--  作者:Bin
--  发布时间:2014/8/18 15:13:00
--  
用SA用户看看
--  作者:有点甜
--  发布时间:2014/8/18 15:23:00
--  

 没办法用户在连你的数据库。

 

 1、你分离一下你的数据库,再附加,就能关闭连接了;

 

 2、杀死Sqlserver进程,或者关闭sqlserver服务,连接也关闭了;

 

 3、用SQL语句 http://www.cnblogs.com/safezone/articles/1251224.html

 


--  作者:有点甜
--  发布时间:2014/8/18 15:24:00
--  

 还有一个需要注意的是,如果是在sqlserver工具里面执行sql语句,记得先use 其它数据库。

 

 use master

 RESTORE DATABASE 新数据库名 FROM DISK=\'bak文件完整路径\' WITH REPLACE


--  作者:33888
--  发布时间:2014/8/18 15:54:00
--  
晕,这么麻烦,看来还是到服务器上,拨掉网线,手工恢复算了。
--  作者:33888
--  发布时间:2014/8/18 15:56:00
--  
本来想是在窗口做一恢复数据的按扭。
--  作者:有点甜
--  发布时间:2014/8/18 16:01:00
--  
以下是引用33888在2014-8-18 15:56:00的发言:
本来想是在窗口做一恢复数据的按扭。

 

也可以做,你可以用sql语句,把所有连接关闭,或者kill进程,然后还原数据。

 

语法网上都有

 

http://www.cnblogs.com/safezone/articles/1251224.html

 


--  作者:有点甜
--  发布时间:2014/8/18 16:02:00
--  
 你可以在sqlserver那里写一个存储过程,然后再foxtable里面调用,即可。
--  作者:33888
--  发布时间:2014/8/18 16:11:00
--  

在局限网非服务器上,能实现不?

 

[此贴子已经被作者于2014-8-18 16:11:44编辑过]

--  作者:有点甜
--  发布时间:2014/8/18 16:13:00
--  
以下是引用33888在2014-8-18 16:11:00的发言:

在局限网非服务器上,能实现不?

 

[此贴子已经被作者于2014-8-18 16:11:44编辑过]

 

局域网的服务器,一样。