[分享] 怎样做sql server数据库的还原

[复制链接]

该用户从未签到

108

主题

209

回帖

6045

积分

Intohard Team

Rank: 7Rank: 7Rank: 7

积分
6045
发表于 2007-7-5 10:22:34 | 显示全部楼层 |阅读模式
今天由于毕业设计要做一个数据库备份和还原的页面。我参考了一段代码后实现了功能但是我发现这段程序有一个比较麻烦的地方,就是数据库的还原的时候会遇到排它性问题。

在网上搜索了找到了小白的Blog上转了一个大富翁论坛上的讨论,看了讨论后发现里面提供的方法还不能直接用于ASP.NET。我对代码进行了稍稍的改动

  void restoreButton_Click(object sender, System.EventArgs e)
  {
  string path = pathTextBox.Text;
  string dbname = dbDropDownList.SelectedValue;

  string restoreSql = "use master;";
  restoreSql += "restore database @dbname from disk = @path;";
        string pai = "use master;ALTER DATABASE Wy SET OFFLINE WITH ROLLBACK IMMEDIATE;ALTER DATABASE Wy SET ONLINE WITH ROLLBACK IMMEDIATE";
        SqlConnection conn = new SqlConnection(ConnStr);
        SqlCommand com1 = new SqlCommand(pai, conn);

  SqlCommand myCommand = new SqlCommand(restoreSql, new SqlConnection(ConnStr));

  myCommand.Parameters.Add("@dbname", SqlDbType.Char);
  myCommand.Parameters["@dbname"].Value = dbname;
  myCommand.Parameters.Add("@path", SqlDbType.Char);
  myCommand.Parameters["@path"].Value = path;


  try
  {
          conn.Open();
          com1.ExecuteNonQuery();
          conn.Close();
          myCommand.Connection.Open();
   myCommand.ExecuteNonQuery();
          infoLabel.Text = "恢复成功!<br>已经把备份"+path+"恢复到数据库";

  }
  catch(Exception ex)
  {
          infoLabel.Text = "恢复失败!<br>出错信息如下:<br>" + ex.ToString();
  }
  finally
  {
   myCommand.Connection.Close();

  }
  }

该用户从未签到

0

主题

4

回帖

3

积分

[INTOHARD]工兵

Rank: 1

积分
3
发表于 2007-11-9 09:57:11 | 显示全部楼层
在企业管理器直接还原就行了,不要 那么复杂吧!

该用户从未签到

0

主题

2

回帖

90

积分

[INTOHARD]工兵

Rank: 1

积分
90
发表于 2008-3-26 20:49:35 | 显示全部楼层
如果数据库破坏怎么样做及时恢复

该用户从未签到

4

主题

35

回帖

120

积分

[INTOHARD]班长

Rank: 2

积分
120
发表于 2008-4-15 09:51:40 | 显示全部楼层
用什么修复工具最好???

该用户从未签到

44

主题

453

回帖

2214

积分

[INTOHARD]营长

飞梦维修服务中心

Rank: 6Rank: 6

积分
2214
发表于 2008-4-23 14:52:24 | 显示全部楼层
原帖由 jiaraoaini 于 2008-4-15 09:51 发表
用什么修复工具最好???

SQL数据库修复工具,欢迎下载试用!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

该用户从未签到

0

主题

5

回帖

34

积分

[INTOHARD]工兵

Rank: 1

积分
34
发表于 2008-7-19 14:51:21 | 显示全部楼层
这样数据库可以还原吗!安全性问题可以保障吗?

该用户从未签到

30

主题

532

回帖

4686

积分

[INTOHARD]团长

Rank: 8Rank: 8

积分
4686
QQ
发表于 2009-6-12 00:03:16 | 显示全部楼层
学习学习.可耕地

该用户从未签到

96

主题

1179

回帖

5553

积分

[INTOHARD]团长

Rank: 8Rank: 8

积分
5553
发表于 2009-7-31 04:10:57 | 显示全部楼层
在企业管理器直接还原就行了

该用户从未签到

0

主题

15

回帖

14

积分

[INTOHARD]工兵

Rank: 1

积分
14
发表于 2009-9-28 16:47:06 | 显示全部楼层
学习!!!!!!!!!!!!!11
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表