C#实现数据库的备份和还原

jerry203_zhang 2009-04-27 04:49:06
在winform下,界面有连个按钮备份数据库和恢复数据库,实现数据库的备份和还原,数据库使用的是sql200

下面是两个类,谁来帮偶写下,谢谢哦

public void BackupDatabase(String databaseName, String userName, String password, String serverName, String destinationPath);

public void RestoreDatabase(String databaseName, String filePath, String serverName, String userName, String password, String dataFilePath, String logFilePath);

...全文
140 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jerry203_zhang 2009-04-28
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 wuyq11 的回复:]
通过存储过程备份或恢复参考
通过SQLDMO实现参考
[/Quote]

用sqldmo实现时这里的formprogress是什么意思啊
claymore1114 2009-04-27
  • 打赏
  • 举报
回复
 protected void Button1_Click(object sender, EventArgs e)
{
string SqlStr1 = "Server=(local);database='" + this.DropDownList1.SelectedValue + "';Uid=sa;Pwd=";
string SqlStr2 = "backup database " + this.DropDownList1.SelectedValue + " to disk='" + this.TextBox1.Text.Trim() + ".bak'";
SqlConnection con = new SqlConnection(SqlStr1);
con.Open();
try
{
if (File.Exists(this.TextBox1.Text.Trim()))
{
Response.Write("<script language=javascript>alert('此文件已存在,请从新输入!');location='Default.aspx'</script>");
return;
}
SqlCommand com = new SqlCommand(SqlStr2, con);
com.ExecuteNonQuery();
Response.Write("<script language=javascript>alert('备份数据成功!');location='Default.aspx'</script>");
}
catch (Exception error)
{
Response.Write(error.Message);
Response.Write("<script language=javascript>alert('备份数据失败!')</script>");
}
finally
{
con.Close();
}
}

 protected void Button1_Click(object sender, EventArgs e)
{
string path = this.FileUpload1.PostedFile.FileName; //获得备份路径及数据库名称
string dbname = this.DropDownList1.SelectedValue;
string SqlStr1 = "Server=(local);database='" + this.DropDownList1.SelectedValue + "';Uid=sa;Pwd=";
string SqlStr2 = "use master restore database " + dbname + " from disk='" + path + "'";
SqlConnection con = new SqlConnection(SqlStr1);
con.Open();
try
{
SqlCommand com = new SqlCommand(SqlStr2, con);
com.ExecuteNonQuery();
Response.Write("<script language=javascript>alert('还原数据成功!');location='Default.aspx'</script>");
}
catch (Exception error)
{
Response.Write(error.Message);
Response.Write("<script language=javascript>alert('还原数据失败!')</script>");
}
finally
{
con.Close();
}
}
caoyulin2000 2009-04-27
  • 打赏
  • 举报
回复
可以使用SQL语句中的语句,
UP
wuyq11 2009-04-27
  • 打赏
  • 举报
回复
通过存储过程备份或恢复参考
通过SQLDMO实现参考
sushou2009 2009-04-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zx_lxq 的回复:]
--备份当前数据库
exec p_backupdb @bkpath='c:\',@bkfname='db_\DATE\_db.bak'
--完整恢复数据库
exec p_RestoreDb @bkfile='c:\db_20031015_db.bak',@dbname='db'
[/Quote]
UP!正解
suners 2009-04-27
  • 打赏
  • 举报
回复
正学习中 关注
xslqingfeng 2009-04-27
  • 打赏
  • 举报
回复
UP
wartim 2009-04-27
  • 打赏
  • 举报
回复
查sqldmo
blestcc 2009-04-27
  • 打赏
  • 举报
回复
不只兩個button的問題吧,備份要選擇備份到哪裡,是完全備份還是差異備份等,還原也要選擇還原哪一個備份啊。
zzxap 2009-04-27
  • 打赏
  • 举报
回复
写存储过程调用
zx_lxq 2009-04-27
  • 打赏
  • 举报
回复
--备份当前数据库
exec p_backupdb @bkpath='c:\',@bkfname='db_\DATE\_db.bak'
--完整恢复数据库
exec p_RestoreDb @bkfile='c:\db_20031015_db.bak',@dbname='db'


110,499

社区成员

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

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

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