///數(shù)據(jù)庫操作控制類///publicclassDataBase" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

c# 通過配置自動(dòng)附加數(shù)據(jù)庫

系統(tǒng) 2025 0
    
      using
    
     System; 
  
    
      using
    
     System.Collections.Generic; 


    
      using
    
     System.Windows.Forms; 


    
      using
    
     System.Data.SqlClient; 


    
      using
    
     System.Data; 


    
      using
    
     System.ServiceProcess; 




    
      namespace
    
     AdminZJC.DataBaseControl 

{ 

 
    
      /// <summary> 
    
    
      /// 數(shù)據(jù)庫操作控制類 
    
    
      /// </summary> 
    
    
      public
    
    
      class
    
     DataBaseControl 

 { 

 
    
      /// <summary> 
    
    
      /// 數(shù)據(jù)庫連接字符串 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     ConnectionString; 



 
    
      /// <summary> 
    
    
      /// SQL操作語句/存儲(chǔ)過程 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     StrSQL; 



 
    
      /// <summary> 
    
    
      /// 實(shí)例化一個(gè)數(shù)據(jù)庫連接對(duì)象 
    
    
      /// </summary> 
    
    
      private
    
     SqlConnection Conn; 



 
    
      /// <summary> 
    
    
      /// 實(shí)例化一個(gè)新的數(shù)據(jù)庫操作對(duì)象Comm 
    
    
      /// </summary> 
    
    
      private
    
     SqlCommand Comm; 



 
    
      /// <summary> 
    
    
      /// 要操作的數(shù)據(jù)庫名稱 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     DataBaseName; 



 
    
      /// <summary> 
    
    
      /// 數(shù)據(jù)庫文件完整地址 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     DataBase_MDF; 



 
    
      /// <summary> 
    
    
      /// 數(shù)據(jù)庫日志文件完整地址 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     DataBase_LDF; 



 
    
      /// <summary> 
    
    
      /// 備份文件名 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     DataBaseOfBackupName; 



 
    
      /// <summary> 
    
    
      /// 備份文件路徑 
    
    
      /// </summary> 
    
    
      public
    
    
      string
    
     DataBaseOfBackupPath; 



 
    
      /// <summary> 
    
    
      /// 執(zhí)行創(chuàng)建/修改數(shù)據(jù)庫和表的操作 
    
    
      /// </summary> 
    
    
      public
    
    
      void
    
     DataBaseAndTableControl() 

 { 

 
    
      try
    
     

 { 

 Conn = 
    
      new
    
     SqlConnection(ConnectionString); 

 Conn.Open(); 



 Comm = 
    
      new
    
     SqlCommand(); 

 Comm.Connection = Conn; 

 Comm.CommandText = StrSQL; 

 Comm.CommandType = CommandType.Text; 

 Comm.ExecuteNonQuery(); 



 MessageBox.Show(
    
      "數(shù)據(jù)庫操作成功!"
    
    , 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      catch
    
     (Exception ex) 

 { 

 MessageBox.Show(ex.Message, 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      finally
    
     

 { 

 Conn.Close(); 

 } 

 } 



 
    
      /// <summary> 
    
    
      /// 附加數(shù)據(jù)庫 
    
    
      /// </summary> 
    
    
      public
    
    
      void
    
     AddDataBase() 

 { 

 
    
      try
    
     

 { 

 Conn = 
    
      new
    
     SqlConnection(ConnectionString); 

 Conn.Open(); 



 Comm = 
    
      new
    
     SqlCommand(); 

 Comm.Connection = Conn; 

 Comm.CommandText = 
    
      "sp_attach_db"
    
    ; 



 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"dbname"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"dbname"
    
    ].Value = DataBaseName; 

 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"filename1"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"filename1"
    
    ].Value = DataBase_MDF; 

 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"filename2"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"filename2"
    
    ].Value = DataBase_LDF; 



 Comm.CommandType = CommandType.StoredProcedure; 

 Comm.ExecuteNonQuery(); 



 MessageBox.Show(
    
      "附加數(shù)據(jù)庫成功"
    
    , 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      catch
    
     (Exception ex) 

 { 

 MessageBox.Show(ex.Message, 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      finally
    
     

 { 

 Conn.Close(); 

 } 

 } 



 
    
      /// <summary> 
    
    
      /// 分離數(shù)據(jù)庫 
    
    
      /// </summary> 
    
    
      public
    
    
      void
    
     DeleteDataBase() 

 { 

 
    
      try
    
     

 { 

 Conn = 
    
      new
    
     SqlConnection(ConnectionString); 

 Conn.Open(); 



 Comm = 
    
      new
    
     SqlCommand(); 

 Comm.Connection = Conn; 

 Comm.CommandText = 
    
      @"sp_detach_db"
    
    ; 



 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"dbname"
    
    , SqlDbType.NVarChar)); 

Comm.Parameters[
    
      @"dbname"
    
    ].Value = DataBaseName; 



 Comm.CommandType = CommandType.StoredProcedure; 

 Comm.ExecuteNonQuery(); 



 MessageBox.Show(
    
      "分離數(shù)據(jù)庫成功"
    
    , 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      catch
    
     (Exception ex) 

 { 

 MessageBox.Show(ex.Message, 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      finally
    
     

 { 

 Conn.Close(); 

 } 

 } 



 
    
      /// <summary> 
    
    
      /// 備份數(shù)據(jù)庫 
    
    
      /// </summary> 
    
    
      public
    
    
      void
    
     BackupDataBase() 

 { 

 
    
      try
    
     

 { 

 Conn = 
    
      new
    
     SqlConnection(ConnectionString); 

 Conn.Open(); 



 Comm = 
    
      new
    
     SqlCommand(); 

 Comm.Connection = Conn; 

 Comm.CommandText = 
    
      "use master;backup database @dbname to disk = @backupname;"
    
    ; 



 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"dbname"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"dbname"
    
    ].Value = DataBaseName; 

 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"backupname"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"backupname"
    
    ].Value = @DataBaseOfBackupPath + @DataBaseOfBackupName; 



 Comm.CommandType = CommandType.Text; 

 Comm.ExecuteNonQuery(); 



 MessageBox.Show(
    
      "備份數(shù)據(jù)庫成功"
    
    , 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      catch
    
     (Exception ex) 

 { 

 MessageBox.Show(ex.Message, 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      finally
    
     

 { 

 Conn.Close(); 

 } 

 } 



 
    
      /// <summary> 
    
    
      /// 還原數(shù)據(jù)庫 
    
    
      /// </summary> 
    
    
      public
    
    
      void
    
     ReplaceDataBase() 

 { 

 
    
      try
    
     

 { 

 
    
      string
    
     BackupFile = @DataBaseOfBackupPath + @DataBaseOfBackupName; 

 Conn = 
    
      new
    
     SqlConnection(ConnectionString); 

 Conn.Open(); 



 Comm = 
    
      new
    
     SqlCommand(); 

 Comm.Connection = Conn; 

 Comm.CommandText = 
    
      "use master;restore database @DataBaseName From disk = @BackupFile with replace;"
    
    ; 



 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"DataBaseName"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"DataBaseName"
    
    ].Value = DataBaseName; 

 Comm.Parameters.Add(
    
      new
    
     SqlParameter(
    
      @"BackupFile"
    
    , SqlDbType.NVarChar)); 

 Comm.Parameters[
    
      @"BackupFile"
    
    ].Value = BackupFile; 



 Comm.CommandType = CommandType.Text; 

 Comm.ExecuteNonQuery(); 



 MessageBox.Show(
    
      "還原數(shù)據(jù)庫成功"
    
    , 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      catch
    
     (Exception ex) 

 { 

 MessageBox.Show(ex.Message, 
    
      "信息提示"
    
    , MessageBoxButtons.OK, MessageBoxIcon.Information); 

 } 

 
    
      finally
    
     

 { 

 Conn.Close(); 

 } 

 } 

 } 

} 



/* 

 
    
      ///調(diào)用事例: 
    
    

  

    還原數(shù)據(jù)庫 

 
    
      private
    
    
      void
    
     button0_Click(
    
      object
    
     sender, EventArgs e) 

 { 

 DataBaseControl DBC = 
    
      new
    
     DataBaseControl(); 

 DBC.ConnectionString = 
    
      "Data Source=(local);User id=sa;Password=123456; Initial Catalog=master"
    
    ; 

 DBC.DataBaseName = 
    
      "MyDatabase"
    
    ; 

 DBC.DataBaseOfBackupName = 
    
      @"back.bak"
    
    ; 

 DBC.DataBaseOfBackupPath = 
    
      @"D:\Program Files\Microsoft SQL Server\MSSQL\Data\"; 

 DBC.ReplaceDataBase(); 

 } 

  

    附加數(shù)據(jù)庫 

 private void button1_Click_1(object sender, EventArgs e) 

 { 

 DataBaseControl DBC = new DataBaseControl(); 

 DBC.ConnectionString = "
    
    Data Source=(local);User id=sa;Password=123456; Initial Catalog=master
    
      "; 

 DBC.DataBaseName = "
    
    MyDatabase
    
      "; 

 DBC.DataBase_MDF = @"
    
    D:\Program Files\Microsoft SQL Server\MSSQL\Data\MyDatabase_Data.MDF
    
      "; 

 DBC.DataBase_LDF = @"
    
    D:\Program Files\Microsoft SQL Server\MSSQL\Data\MyDatabase_Log.LDF
    
      "; 

 DBC.AddDataBase(); 

 } 

  

    備份數(shù)據(jù)庫 

 private void button2_Click(object sender, EventArgs e) 

 { 

 DataBaseControl DBC = new DataBaseControl(); 

 DBC.ConnectionString = "
    
    Data Source=(local);User id=sa;Password=123456; Initial Catalog=master
    
      "; 

 DBC.DataBaseName = "
    
    MyDatabase
    
      "; 

 DBC.DataBaseOfBackupName = @"
    
    back.bak
    
      "; 

 DBC.DataBaseOfBackupPath = @"
    
    D:\Program Files\Microsoft SQL Server\MSSQL\Data\
    
      "; 

 DBC.BackupDataBase(); 

 } 

  

    分離數(shù)據(jù)庫 

 private void button3_Click(object sender, EventArgs e) 

 { 

 DataBaseControl DBC = new DataBaseControl(); 

 DBC.ConnectionString = "
    
    Data Source=(local);User id=sa;Password=123456; Initial Catalog=master
    
      "; 

 DBC.DataBaseName = "
    
    MyDatabase"; 

 DBC.DeleteDataBase(); 

 } 
  

c# 通過配置自動(dòng)附加數(shù)據(jù)庫


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 欧美另类网 | 妖精视频一区二区三区 | 日本无翼乌全彩无遮挡动漫 | 久久亚洲综合伊人 | 欧美日韩在线视频播放 | 亚洲国产精品日韩高清秒播 | 在线观看片成人免费视频 | 成在线人免费视频一区二区三区 | 国产一区二区三区高清 | 又爽又黄又无遮挡的视频在线观看 | 国产高清一区二区三区视频 | 午夜二级 | 色在线视频 | 国产精品欧美日韩精品 | 一区二区三区中文字幕 | 欧美vs日韩vs国产在线观看 | 愉拍自拍 | 免费视频亚洲 | 欧美特黄级乱色毛片 | 超乳w真性中出し冲田杏梨101 | 亚洲精品中文字幕久久久久久 | 国产日产精品_国产精品毛片 | 中文亚洲日韩欧美 | 欧美成人午夜视频 | 精品国产品香蕉在线观看 | 日本黄色录像 | 国内精品免费网站牛牛 | 午夜影院免费在线观看 | 夜夜操网 | 日韩欧美视频一区 | 亚洲国产精品ⅴa在线观看 亚洲国产精品aa在线看 | 成人在线视频网 | 青青青青爽视频在线播放 | 欧美精品专区免费观看 | 朴妮唛禁福利视频在线 | 一本一本久久α久久精品66 | 亚洲欧美视频二区 | 中国漂亮护士一级毛片 | 天天热天天干 | 精品亚洲无人区一区二区 | 看片福利 |