在 C# 上連線到 SQL 資料庫

Fil Zjazel Romaeus Villegas 2022年4月20日
在 C# 上連線到 SQL 資料庫

本教程將演示如何使用 SqlConnection 物件連線到 C# 上的 SQL 資料庫。

使用 SqlConnection 物件連線到 C# 上的 SQL 資料庫

SqlConnection 類是一個物件,表示與傳遞的連線字串指定的 SQL Server 資料庫的連線。它包含在名稱空間 System.Data.SqlClient 中。

SqlConnection connection = new SqlConnection(connectionString);

連線字串包含有關資料來源、如何連線到它以及連線配置詳細資訊的資訊。你可以在連線字串中包含許多不同的引數,但我們將討論一些最常用的引數。

  1. Server / Data Source:儲存資料庫的伺服器名稱。
  2. Database / Initial Catalog:這是資料庫的名稱。
  3. Trusted Connection / Integrated Security:指定應用程式是否可以使用系統上任何可用的安全包。如果設定為 true,則不需要使用者 ID 和密碼引數。
  4. 使用者 ID:連線的使用者名稱。
  5. 密碼:用於連線的密碼。

將連線字串傳遞給 SqlConnection 物件後,你可以使用其方法管理連線。

  1. Open():開啟連線。
  2. Close():關閉連線。
  3. Dispose():釋放連線使用的資源。
  4. ChangeDatabase():為開啟的 SqlConnection 更改當前資料庫。

例子:

using System;
using System.Data.SqlClient;

namespace SQLConnection_Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            //The server's name that holds the database
            string DataSource = "MSI\\SQLEXPRESS";

            //The name of the database
            string InitialCatalog = "SampleDB";
            
            //Sets if the connection should use integrated security.
            //If this value is set to "SSPI", the user's Windows Authentication will be used
            string IntegratedSecurity = "SSPI"; 

            //Should the database require a specific log in
            string UserID = "";
            string Password = "";


            string connectionString = "Data Source =" + DataSource
                + "; Initial Catalog =" + InitialCatalog
                + "; Integrated Security=" + IntegratedSecurity
                //+ "; User ID=" + UserID
                //+ "; Password=" + Password
                ; 

            try
            {
               SqlConnection connection = new SqlConnection(connectionString);
                connection.Open();
                Console.WriteLine("The database has been opened!");
                Console.WriteLine("Connection State: " + connection.State.ToString());

                connection.Close();
                Console.WriteLine("The database has been closed!");

                connection.Dispose();
                Console.WriteLine("The database connection has been disposed!");
                Console.WriteLine("Connection State: " + connection.State.ToString()); 
            }
            catch(Exception ex)
            {
                Console.WriteLine("There's an error connecting to the database!\n" + ex.Message);
            }
                      
            Console.ReadLine();

        }
    }
}

在上面的示例中,我們首先通過輸入伺服器、資料庫名稱和整合的安全引數來建立連線字串。將其傳遞給 SqlConnection 物件後,我們通過開啟、關閉和最後釋放連線來演示不同的狀態。

所有這些都列印在控制檯中。

輸出:

The database has been opened!
Connection State: Open
The database has been closed!
The database connection has been disposed!
Connection State: Closed

相關文章 - Csharp SQL