在 C# 上连接到 SQL 数据库

Fil Zjazel Romaeus Villegas 2023年10月12日
在 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