///數(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)論
主站蜘蛛池模板: 日本视频在线观看不卡高清免费 | 日韩va亚洲va欧美va浪潮 | 国产一区二区久久久 | 国产a不卡片精品免费观看 国产a高清 | 色综合视频在线观看 | 日韩精品一区二区三区在线观看l | 青青青爽在线视频观看 | 欧美午夜视频一区二区三区 | 日韩欧美手机在线 | 亚洲视屏在线观看 | 日韩欧美毛片免费观看视频 | 国产成人黄网址在线视频 | 中文字幕一区二区区免 | 一级片aa | 精品国产96亚洲一区二区三区 | 亚洲日韩精品欧美一区二区一 | 色婷婷视频在线 | 特级毛片免费视频播放 | 成人在线第一页 | se婷婷| 久久欧美精品欧美九久欧美 | 在线观看欧美精品 | 欧美综合视频在线观看 | 久久 精品 一区二区 | 国产国产人免费观看在线视频 | 四虎国产精品免费久久麻豆 | 欧美日韩一区二区在线观看视频 | 免费人成年短视频在线观看网站 | 亚洲一区二区三区香蕉 | 中中文字幕亚州无线码 | 亚洲欧美国产中文 | 亚洲一区视频在线播放 | 四虎久久久 | 欧美精品成人a多人在线观看 | 国产高清一区二区三区四区 | 玖玖精品视频在线 | 天天综合天天添夜夜添狠狠添 | 2020年新四虎免费 | 骚碰97 | 99热在线获取最新地址 | 99r精品|