zoukankan      html  css  js  c++  java
  • .Net 数据库(SqlServer2008)的备份、还原

    //备份代码
    private
    void Backup() { SqlConnection sqlConn = new SqlConnection(strConn); strFileName = "databasebackup_" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".bak"; strFile = strPath + strFileName; strSql = "BACKUP DATABASE TeamWeb to DISK ='" + strFile + "'"; SqlCommand sqlCmd = new SqlCommand(strSql, sqlConn); Maticsoft.Model.T_DataBaseBackUpInfo model = new Maticsoft.Model.T_DataBaseBackUpInfo(); Maticsoft.BLL.T_DataBaseBackUpInfo bll = new Maticsoft.BLL.T_DataBaseBackUpInfo(); model.Name = strFileName; model.PostTime = DateTime.Now; try { sqlConn.Open(); sqlCmd.ExecuteNonQuery(); bll.Add(model); jc = new JsonClass("备份成功", 1); sqlConn.Close(); } catch (Exception ex) { jc = new JsonClass("备份失败",2); } Response.Write(jc); Response.End(); }
    //还原代码
    private
    void Restore(int id) { Maticsoft.Model.T_DataBaseBackUpInfo model = new Maticsoft.Model.T_DataBaseBackUpInfo(); Maticsoft.BLL.T_DataBaseBackUpInfo bll = new Maticsoft.BLL.T_DataBaseBackUpInfo(); model = bll.GetModel(id); SqlConnection conn = new SqlConnection("Server=localhost;Database=master;User ID=sa;Password=123456;Trusted_Connection=False"); conn.Open(); try { //KILL DataBase Process SqlCommand cmd = new SqlCommand("SELECT spid FROM SysProcesses ,Master.dbo.sysdatabases WHERE sysprocesses.dbid=sysdatabases.dbid AND sysdatabases.Name='TeamWeb'", conn); SqlDataReader dr; dr = cmd.ExecuteReader(); ArrayList list = new ArrayList(); while (dr.Read()) { list.Add(dr.GetInt16(0)); } dr.Close(); for (int i = 0; i < list.Count; i++) { object num = list[i]; cmd = new SqlCommand(string.Format("KILL {0}", list[i]), conn); cmd.ExecuteNonQuery(); } string strfile = System.Web.HttpContext.Current.Server.MapPath("../Backup/") + model.Name; strSql = "use master restore database TeamWeb from disk='" + strfile + "' with replace "; SqlCommand sqlCmd = new SqlCommand(strSql, conn); sqlCmd.ExecuteNonQuery(); jc = new JsonClass("还原成功", 1); conn.Close(); SqlConnection.ClearAllPools();//还原成功后,加上这句话,再次访问数据库,就不会报:在向服务器发送请求时发生传输级错误。 } catch (Exception ex) { jc = new JsonClass("还原失败", 2); } Response.Write(jc); Response.End(); }
  • 相关阅读:
    Hibernate提供的内置标识符生成器
    ThreadLocal解析
    save()/saveOrUpdate()/merge()的区别
    Hibernate中主键生成策略
    session/SessionFactory线程非安全和线程安全
    load/get延迟加载和及时加载
    最长公共子序列:递归,非递归实现
    c语言,递归翻转一个单链表,c实现单链表
    最长递增子序列(Longest Increase Subsequence)
    求一串数字中——和最大的连续子序列; 求一串数字差值的绝对值最小的两个数字
  • 原文地址:https://www.cnblogs.com/chidou-yin/p/3475859.html
Copyright © 2011-2022 走看看