|zyciis| 在服务器上ASP.NET如何还原SQL数据库备份

zyciis154 2010-09-19 10:22:20

var session = Z.Core.NHibernateCore.NHibernateHelper.GetCurrentSession();
var queryKill = session.CreateSQLQuery("USE Master; SELECT spid FROM sysprocesses ,sysdatabases WHERE sysprocesses.dbid=sysdatabases.dbid AND sysdatabases.Name='ZShop'");

var list = queryKill.List();
foreach (var item in list)
{
queryKill = session.CreateSQLQuery("KILL " + item);
queryKill.ExecuteUpdate();
}
var query = session.CreateSQLQuery("USE Master; RESTORE DATABASE ZSHOP FROM DISK ='" + filePath + fileName + "' WITH REPLACE");
query.ExecuteUpdate();

这是我还原数据库的代码,
在本地测试是正确的,但是在服务器上提示没有Master的权限
那应该如何来还原呢?
首先服务器上我是肯定没有Master表的权限的
但如果我这里,不用到Master的话没有办法杀掉进程
就算杀得了,他也会提示:

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


那在服务器上面我的ASP.NET网站应该如何制作自动还原的功能呢?

谢谢
...全文
63 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengyun142415 2010-09-19
  • 打赏
  • 举报
回复
试试让服务商给你相应的权限
王向飞 2010-09-19
  • 打赏
  • 举报
回复
额。。。让服务商给你还原吧。。
ws_hgo 2010-09-19
  • 打赏
  • 举报
回复
我的blog
mssql版本里面有
你去看下
现在服务器忙碌打不开拉
「已注销」 2010-09-19
  • 打赏
  • 举报
回复
这个肯定需要master权限的吧,要不你如何去操作呢?
感觉有点矛盾~
ws_hgo 2010-09-19
  • 打赏
  • 举报
回复
服务器商怎么回给你master的权限你了

你还原备份你自己的数据库啊

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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