#建立SQL Server資料庫淺析

來源:互聯網
上載者:User

 C#創 建SQL Server資料庫

  在建立了資料庫連接對象後,我們就可以在程式中運用它了。首先,我們在程式中動態地C#建立SQL Server資料庫。我們將資料庫建立在C:\mysql目錄下,所以讀者要練習該執行個體的話得先在C:下建立一個名為mysql的檔案夾,否則會出錯!創 建資料庫的關鍵是函數中的sql對象,通過該對象我們指定了資料庫檔案的一些基本屬性。之後,我們新建立了一個SqlCommand對象,通過該對象我們 就實際完成了對資料庫的操作。函數的實現如下:

 

 
  1. private void button1_Click(object sender, System.EventArgs e) 
  2.  
  3.  
  4. // 開啟資料庫連接 
  5.  
  6. if( conn.State != ConnectionState.Open)  conn.Open(); 
  7.  
  8. string sql = "CREATE DATABASE mydb ON PRIMARY" +"(name=test_data, 
  9.  
  10. filename =  'C:\\mysql\\mydb_data.mdf', size=3,"  +"maxsize=5, 
  11.  
  12. filegrowth=10%)log on"  +"(name=mydbb_log, 
  13.  
  14. filename='C:\\mysql\\mydb_log.ldf',size=3,"  +"maxsize=20,filegrowth=1)"; 
  15.  
  16. cmd = new SqlCommand(sql, conn); 
  17.  
  18. try 
  19.  
  20.  
  21. cmd.ExecuteNonQuery(); 
  22.  
  23.  
  24. catch(SqlException ae) 
  25.  
  26.  
  27. MessageBox.Show(ae.Message.ToString()); 
  28.  
  29.  

  建立了資料庫後,我們得為其建立表,表是資料庫中的基本對象。我們通過CREATE TABLE這句SQL陳述式完成建立表的操作,表被建立後,我們就確定了其模式(Schema)。之後,我們還通過INSERT語句向該表中添加了四條記錄 以為後用。函數的實現如下:

 
  1. private void button2_Click(object sender, System.EventArgs e) 
  2.  
  3.  
  4. // 開啟資料庫連接 
  5.  
  6. if( conn.State == ConnectionState.Open)  conn.Close(); 
  7.  
  8. ConnectionString ="Integrated Security=SSPI;" +  "Initial Catalog=mydb;" +  "Data Source=localhost;"; 
  9.  
  10. conn.ConnectionString = ConnectionString; 
  11.  
  12. conn.Open(); 
  13.  
  14. sql = "CREATE TABLE myTable"+  "(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY,"+  "myName CHAR(50), 
  15.  
  16. myAddress CHAR(255), myBalance  FLOAT)"; 
  17.  
  18. cmd = new SqlCommand(sql, conn); 
  19.  
  20. try 
  21.  
  22.  
  23. cmd.ExecuteNonQuery(); 
  24.  
  25. // 向表中添加記錄 
  26.  
  27. sql = "INSERT INTO myTable(myId, myName,  myAddress, myBalance) "+  "VALUES (1001, 'Puneet Nehra', 'A 449 Sect 19, DELHI', 23.98 ) " ; 
  28.  
  29. cmd = new SqlCommand(sql, conn); 
  30.  
  31. cmd.ExecuteNonQuery(); 
  32.  
  33. sql = "INSERT INTO myTable(myId, myName,myAddress, myBalance) "+  "VALUES (1002, 'Anoop Singh', 'Lodi Road, DELHI', 353.64) " ; 
  34.  
  35. cmd = new SqlCommand(sql, conn); 
  36.  
  37. cmd.ExecuteNonQuery(); 
  38.  
  39. sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+  "VALUES (1003, 'Rakesh M', 'Nag Chowk, Jabalpur M.P.', 43.43) " ; 
  40.  
  41. cmd = new SqlCommand(sql, conn); 
  42.  
  43. cmd.ExecuteNonQuery(); 
  44.  
  45. sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) "+  "VALUES (1004, 'Madan Kesh', '4th Street, Lane 3, DELHI', 23.00) " ; 
  46.  
  47. cmd = new SqlCommand(sql, conn); 
  48.  
  49. cmd.ExecuteNonQuery(); 
  50.  
  51.  
  52. catch(SqlException ae) 
  53.  
  54.  
  55. MessageBox.Show(ae.Message.ToString()); 
  56.  
  57.  
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.