SQL语句进行数据库备份还原

 /// <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();
            }


        }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值