RESTORE 无法处理数据库 ,因为它正由此会话使用。建议在执行此操作时使用 master 数据库。

zaq1cde3 2009-11-01 12:07:58
运行回复数据库是总弹出报错对话框如下:
RESTORE 无法处理数据库 'Students',因为它正由此会话使用。建议在执行此操作时使用 master 数据库。
RESTORE DATABASE 正在异常终止???

下面是我写的回复数据库的存储过程:
RESTORE DATABASE Students from Disk=@filename
WITH RECOVERY

加上下面两句也报同样的错
move 'Students\database\Students.mdf' to 'D:\xingjunC#Projects\2学生管理系统 \Students\database\Students.mdf',
move 'Students\database\Students_log.ldf' to 'D:\xingjunC#Projects\2学生管理系统\Students\database\Students_log.ldf'
...全文
4069 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
kisumei 2012-05-26
  • 打赏
  • 举报
回复
我试了,12#和15#两种方法都试了,没用
yqjdcyy 2012-03-07
  • 打赏
  • 举报
回复
尝试系统管理权限进入,还原成功!
hmilysjl 2011-12-06
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 tt882095 的回复:]
在你安装sql server 的时候,中间会有一个提示,说是打开的时候默认连接的数据库,你肯定是选择的你当前使用的这个库,而不是默认的master,这个时候,你用连接数据库使用的用户,比如sa,或者其他的用户,双击用户名,在弹出的页面中修改“默认数据库”为master或者其他的库,修改完成后保存。再试试还原数据库文件,就可以了~
[/Quote]

15楼正解。
w_sabre 2011-05-25
  • 打赏
  • 举报
回复
15楼和12楼的兄弟说得都对。
tt882095 2011-03-23
  • 打赏
  • 举报
回复
在你安装sql server 的时候,中间会有一个提示,说是打开的时候默认连接的数据库,你肯定是选择的你当前使用的这个库,而不是默认的master,这个时候,你用连接数据库使用的用户,比如sa,或者其他的用户,双击用户名,在弹出的页面中修改“默认数据库”为master或者其他的库,修改完成后保存。再试试还原数据库文件,就可以了~
langren52d 2011-01-06
  • 打赏
  • 举报
回复
偶也是这个问题
Element 2010-07-06
  • 打赏
  • 举报
回复
RESTORE 无法处理数据库 'research',因为它正由此会话使用。建议在执行此操作时使用 master 数据库。
我也遇到这个问题,不知你是否解决了吗!
phoenixx123 2010-04-22
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 workhard_success 的回复:]
我也碰到这种情况,请问你是否直接用windows身份验证登录的sql server?
如果是这样的话,会提示数据库正在使用中;
请换成Sql Server身份验证登陆,再做还原操作,即可成功!


Good Luck!
[/Quote]

哈哈,8L说windows身份登录不行,就用sqlserver身份登录。
可我一直用就是sqlserver登录的呀,然后一个邪恶的念头在我脑海里闪过。
我换成了windows身份登录,提示成功!

ps:估计就是原数据库被占用了,换一种登录方式可以切断这种占用,用别的方式切断也可以,比如把当前数据库改成master(只是想想,未测试)
fenglinyu123456 2010-01-19
  • 打赏
  • 举报
回复
RESTORE DATABASE Students from Disk=@filename
WITH RECOVERY

我的也不可以
fenglinyu123456 2010-01-19
  • 打赏
  • 举报
回复
在数据库上面操作可以还原数据库,但是在程序就做不到,关注中....
restore database bd from disk='e:\d4.bak' with replace
vingocyc 2010-01-07
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 workhard_success 的回复:]
我也碰到这种情况,请问你是否直接用windows身份验证登录的sql server?
如果是这样的话,会提示数据库正在使用中;
请换成Sql Server身份验证登陆,再做还原操作,即可成功!


Good Luck!
[/Quote]


还是不行
workhard_success 2009-11-11
  • 打赏
  • 举报
回复
我也碰到这种情况,请问你是否直接用windows身份验证登录的sql server?
如果是这样的话,会提示数据库正在使用中;
请换成Sql Server身份验证登陆,再做还原操作,即可成功!


Good Luck!
SQL77 2009-11-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zaq1cde3 的回复:]
连接上master       
     
断开数据库 'Students',打开1连接进行恢复
这样试了也不行

[/Quote]
你脱机试试看
SQL77 2009-11-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zaq1cde3 的回复:]
连接上master       
     
断开数据库 'Students',打开1连接进行恢复
这样试了也不行

[/Quote]
你直接在数据库中企业管理器中操作试一下
zaq1cde3 2009-11-01
  • 打赏
  • 举报
回复
连接上master

断开数据库 'Students',打开1连接进行恢复
这样试了也不行
SQL77 2009-11-01
  • 打赏
  • 举报
回复
RESTORE 无法处理数据库 'Students',因为它正由此会话使用

你还在用?
SQL77 2009-11-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zaq1cde3 的回复:]
RESTORE  DATABASE  库名    FROM  DISK='备份文件名' with replace 
  用上面的句子恢复数据库时,若我开发的一应用软件已连接到该数据库(就是说软件正在使用该数据库),恢复出错了.有没有办法解决??
[/Quote]
那样只能是关闭该软件的连接了,分离此数据库
zaq1cde3 2009-11-01
  • 打赏
  • 举报
回复
RESTORE DATABASE 库名 FROM DISK='备份文件名' with replace
用上面的句子恢复数据库时,若我开发的一应用软件已连接到该数据库(就是说软件正在使用该数据库),恢复出错了.有没有办法解决??
zaq1cde3 2009-11-01
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sql77 的回复:]
引用 2 楼 zaq1cde3 的回复:
连接上master       
     
断开数据库 'Students',打开1连接进行恢复
这样试了也不行


你直接在数据库中企业管理器中操作试一下
[/Quote]

从右击数据库 任务 还原 数据 选择备份的文件,这样能恢复数据库

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧