/// <summary>
/// 备份按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
SqlConnection sqlcon = new SqlConnection(Properties.Settings.Default.ConnectionString);
sqlcon.Open();
string CmdStr = "exec master.dbo.xp_cmdshell 'md D:\\DataBackup'";
SqlCommand cmd = new SqlCommand(CmdStr, sqlcon);
cmd.ExecuteNonQuery();
string[] stringSeparators = new string[] { ";" };
string[] str = Properties.Settings.Default.ConnectionString.Split(stringSeparators, System.StringSplitOptions.RemoveEmptyEntries);
//string ServerName = str[0].Substring(str[0].IndexOf("=") + 1, str[0].Length - str[0].IndexOf("=") - 1).Trim();
string DataBase = str[1].Substring(str[1].IndexOf("=") + 1, str[1].Length - str[1].IndexOf("=") - 1).Trim();
cmd.CommandText = @"backup database " + DataBase + " to disk='D:\\DataBackup\\" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".bak'";
try
{
cmd.ExecuteNonQuery();
//splashScreenManager1.CloseWaitForm();
MessageBox.Show("备份成功!");
}
catch (Exception ex)
{
cmd.Dispose();
//splashScreenManager1.CloseWaitForm();
MessageBox.Show("数据库备份失败:" + ex.Message);
}
sqlcon.Close();
}
}
/// <summary>
/// 数据库还原
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void barButtonItem6_ItemClick_1(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
(new DataBackupForm()).ShowDialog();
string path = @"c:/Test.bak";
string restore = "restore database Test from disk='" + path + "';";
SqlConnection con = new SqlConnection("server=.;uid=sa;pwd=;");
SqlCommand cmd = new SqlCommand(restore, con);
try
{
con.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("数据库还原成功!");
}
catch (Exception ex)
{
cmd.Dispose();
MessageBox.Show("数据库还原失败:" + ex.Message);
}
finally
{
con.Close();
}
}