C#备份与恢复sql数据库的简单代码
2009-08-13 13:31
417 查看
采用C#代码备份数据库到指定路径的方法:
string ConnectionString = "SERVER=(Local);database=SellManage;Integrated Security =True";
SqlConnection myCon = new SqlConnection(ConnectionString);
myCon.Open();
string SqlIns = "backup database SellManage to disk='" + Path+ "//" + BackupName+ ".dat'";
SqlCommand command = new SqlCommand();
command.CommandText = SqlIns;
command.Connection = myCon;
command.ExecuteNonQuery();
恢复数据库到系统的方法如下(必须杀死所有跟该数据库有关的进程)
try
{
string ConnectionString = "SERVER=(Local);database=master;Integrated Security =True";
SqlConnection myCon = new SqlConnection(ConnectionString);
myCon.Open();
#region 杀掉所有连接SellManage数据库的进程
string strSQL = "select spid from master..sysprocesses where dbid=db_id( 'daname') ";
SqlDataAdapter Da = new SqlDataAdapter(strSQL, myCon);
DataTable spidTable = new DataTable();
Da.Fill(spidTable);
SqlCommand Cmd = new SqlCommand();
Cmd.CommandType = CommandType.Text;
Cmd.Connection = myCon;
for (int iRow = 0; iRow < spidTable.Rows.Count; iRow++)
{
Cmd.CommandText = "kill " + spidTable.Rows[iRow][0].ToString(); //强行关闭用户进程
Cmd.ExecuteNonQuery();
}
myCon.Close();
myCon.Dispose();
#endregion
SqlConnection myCon1 = new SqlConnection(ConnectionString);
myCon1.Open();
string SqlIns = "restore database SellManage from disk='" + RestorePath+ "' ";
SqlCommand command1 = new SqlCommand(SqlIns, myCon1);
command1.ExecuteNonQuery();
command1.Dispose();
myCon1.Close();
myCon1.Dispose();
MessageBox.Show("数据还原成功!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch
{
MessageBox.Show("数据还原失败!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
但是如果要定时或者安全的备份跟还原数据库最好是在存储过程中实现
string ConnectionString = "SERVER=(Local);database=SellManage;Integrated Security =True";
SqlConnection myCon = new SqlConnection(ConnectionString);
myCon.Open();
string SqlIns = "backup database SellManage to disk='" + Path+ "//" + BackupName+ ".dat'";
SqlCommand command = new SqlCommand();
command.CommandText = SqlIns;
command.Connection = myCon;
command.ExecuteNonQuery();
恢复数据库到系统的方法如下(必须杀死所有跟该数据库有关的进程)
try
{
string ConnectionString = "SERVER=(Local);database=master;Integrated Security =True";
SqlConnection myCon = new SqlConnection(ConnectionString);
myCon.Open();
#region 杀掉所有连接SellManage数据库的进程
string strSQL = "select spid from master..sysprocesses where dbid=db_id( 'daname') ";
SqlDataAdapter Da = new SqlDataAdapter(strSQL, myCon);
DataTable spidTable = new DataTable();
Da.Fill(spidTable);
SqlCommand Cmd = new SqlCommand();
Cmd.CommandType = CommandType.Text;
Cmd.Connection = myCon;
for (int iRow = 0; iRow < spidTable.Rows.Count; iRow++)
{
Cmd.CommandText = "kill " + spidTable.Rows[iRow][0].ToString(); //强行关闭用户进程
Cmd.ExecuteNonQuery();
}
myCon.Close();
myCon.Dispose();
#endregion
SqlConnection myCon1 = new SqlConnection(ConnectionString);
myCon1.Open();
string SqlIns = "restore database SellManage from disk='" + RestorePath+ "' ";
SqlCommand command1 = new SqlCommand(SqlIns, myCon1);
command1.ExecuteNonQuery();
command1.Dispose();
myCon1.Close();
myCon1.Dispose();
MessageBox.Show("数据还原成功!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch
{
MessageBox.Show("数据还原失败!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
但是如果要定时或者安全的备份跟还原数据库最好是在存储过程中实现
相关文章推荐
- C#实现SQL数据库备份与恢复
- C#实现SQL数据库备份与恢复
- Mysql数据库的备份和恢复(史上最简单,只需鼠标点击操作,不需要写代码)
- C#实现SQL数据库备份与恢复
- C#实现SQL数据库备份与恢复
- C#实现SQL数据库备份与恢复(zzfrom:http://www.cnblogs.com/icwin/articles/1285657.html)
- C#实现SQL数据库备份与恢复
- C#对sql数据库进行"备份"和"恢复"程序
- C#实现SQL数据库备份与恢复
- c#备份恢复sql数据库
- C#实现SQL数据库备份与恢复
- 基于ASP.NET(C#)Web开发平台,对远程备份与恢复SQLServer数据库的方法
- 收集SQL数据库备份一段代码
- 收了100元辛苦费,写了一个最简单的C#ASP.NET的3层架构例子代码,源码是通过代码生成器生成的【写程序的效率神奇的高】
- 对“C#写的简单的日历,窗体输出。”的改写,精简了一半多代码
- C#备份及还原数据库的实现代码(粗略) // 利用C#还原数据库(SQL SERVER)备份文件到指定路径
- C#可定制的数据库备份和恢复程序
- 0306数据备份整理-【配置文件】C#代码
- java 实现mysql 的备份与恢复,全部代码
- c#、sql数据库备份还原