共用方式為


使用 ADO.NET 和 Visual C# .NET 以程式設計方式建立 SQL Server 資料庫

本文說明如何使用 ADO.NET 和 Visual C# .NET,以程式設計方式建立 SQL Server 資料庫。

原始產品版本: Visual C#
原始 KB 編號: 307283

摘要

本逐步解說文章說明如何使用 ADO.NET 和 Visual C# .NET 建立 Microsoft SQL Server 資料庫,因為程式設計人員通常需要以程式設計方式建立資料庫。

本文參照下列 Microsoft .NET Framework 類別庫命名空間:System.Data.SqlClient

建立 SQL Server 資料庫的步驟

若要建立資料庫,請遵循下列步驟:

  1. 建立新的 Visual C# .NET Windows 應用程式。

  2. 在 Form1 上放置按鈕。 將按鈕的 Name 屬性變更為 btnCreateDatabase,然後將屬性變更 Text 為建立資料庫。

  3. 在系統和 System.Data 命名空間上使用using語句,讓您稍後不需要在程式代碼中限定這些命名空間中的宣告。 將下列程式代碼新增至 Form1 的 [一般宣告] 區段:

    using System;
    using System.Data.SqlClient;
    
  4. 切換至 [表單視圖],然後按兩下 [ 建立資料庫 ] 以新增 click 事件處理程式。 將下列範例程式代碼新增至處理程式:

     String str;
     SqlConnection myConn = new SqlConnection ("Server=localhost;Integrated security=SSPI;database=master");
    
    str = "CREATE DATABASE MyDatabase ON PRIMARY " +
     "(NAME = MyDatabase_Data, " +
     "FILENAME = 'C:\\MyDatabaseData.mdf', " +
     "SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%)" +
     "LOG ON (NAME = MyDatabase_Log, " +
     "FILENAME = 'C:\\MyDatabaseLog.ldf', " +
     "SIZE = 1MB, " +
     "MAXSIZE = 5MB, " +
     "FILEGROWTH = 10%)";
    
    SqlCommand myCommand = new SqlCommand(str, myConn);
    try
    {
        myConn.Open();
        myCommand.ExecuteNonQuery();
        MessageBox.Show("DataBase is Created Successfully", "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
    catch (System.Exception ex)
    {
        MessageBox.Show(ex.ToString(), "MyProgram", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
    finally
    {
        if (myConn.State == ConnectionState.Open)
        {
            myConn.Close();
        }
    }
    
  5. 將 連接字串 變更為指向執行 SQL Server 的計算機,然後確認 Database 自變數已設定為 Master 或空白。

  6. F5CTRL+F5 執行項目,然後按兩下 [ 建立資料庫]

  7. 使用 [伺服器總管] 確認資料庫已建立。

注意事項

  • 此程式代碼會建立具有特定屬性的自定義資料庫。
  • 要保存所建立.mdf和 .ldf 檔案的資料夾必須已經存在,您才能執行程式代碼,否則將會產生例外狀況。
  • 如果您想要建立類似 SQL Server Model 資料庫的資料庫,而且想要將資料庫設為預設位置,請變更程式代碼中的 str 變數,如下列範例程式代碼所示:str = "CREATE DATABASE MyDatabase"

參考資料