C# + PostgreSQL 数据库 - CRUD 教程

本文将介绍如何在 C#编程语言中使用 PostgreSQL 数据库执行 CRUD(创建、读取、更新、删除)操作。

发布于

本文将介绍如何在 C#编程语言中使用 PostgreSQL 数据库执行 CRUD(创建、读取、更新、删除)操作。PostgreSQL 是一个强大的开源关系型数据库管理系统,而 C#是一种流行的编程语言,将它们结合在一起,为数据操作提供了卓越的能力。在本教程中,我们将逐步介绍如何连接 PostgreSQL 数据库,执行基本的 CRUD 操作,以及最后的总结。

先决条件

为了连接 PostgreSQL 数据库,需要具备以下先决条件:

  1. 安装 PostgreSQL 服务器:确保您已经安装了 PostgreSQL 服务器并且它正在运行。您可以从PostgreSQL 官方网站下载并安装最新版本的 PostgreSQL。

  2. 安装 Npgsql 驱动程序:我们将使用 Npgsql 作为 C#与 PostgreSQL 数据库的连接工具。您可以使用 NuGet 包管理器安装 Npgsql。

  3. C# 开发环境:确保您已经设置好 C#的开发环境,如 Visual Studio 或 Visual Studio Code。

示例

接下来,我们将展示一个简单的示例,演示如何连接到 PostgreSQL 数据库并执行 CRUD 操作。我们将使用一个名为"user"的表,其中包含"username"和"email"两列。

连接到 PostgreSQL

首先,您需要在 C#代码中引用 Npgsql,并配置数据库连接信息:

using Npgsql;

string connectionString = "Host=your_host;Port=your_port;Database=your_database;Username=your_username;Password=your_password";
NpgsqlConnection connection = new NpgsqlConnection(connectionString);

try
{
    connection.Open();
    // 连接成功
}
catch (NpgsqlException ex)
{
    Console.WriteLine("连接失败: " + ex.Message);
}
finally
{
    connection.Close();
}

请替换"your_host"、“your_port”、“your_database”、“your_username"和"your_password"为您的 PostgreSQL 服务器信息。

创建数据

下面是如何向"user"表中插入数据的示例:

string insertQuery = "INSERT INTO user (username, email) VALUES (@username, @email)";
NpgsqlCommand cmd = new NpgsqlCommand(insertQuery, connection);

cmd.Parameters.AddWithValue("@username", "JohnDoe");
cmd.Parameters.AddWithValue("@email", "[email protected]");

cmd.ExecuteNonQuery();

读取数据

以下是如何从"user"表中读取数据的示例:

string selectQuery = "SELECT * FROM user";
NpgsqlCommand cmd = new NpgsqlCommand(selectQuery, connection);

using (NpgsqlDataReader reader = cmd.ExecuteReader())
{
    while (reader.Read())
    {
        Console.WriteLine($"Username: {reader["username"]}, Email: {reader["email"]}");
    }
}

更新数据

更新"user"表中的数据示例:

string updateQuery = "UPDATE user SET email = @newEmail WHERE username = @username";
NpgsqlCommand cmd = new NpgsqlCommand(updateQuery, connection);

cmd.Parameters.AddWithValue("@newEmail", "[email protected]");
cmd.Parameters.AddWithValue("@username", "JohnDoe");

cmd.ExecuteNonQuery();

删除数据

删除"user"表中的数据示例:

string deleteQuery = "DELETE FROM user WHERE username = @username";
NpgsqlCommand cmd = new NpgsqlCommand(deleteQuery, connection);

cmd.Parameters.AddWithValue("@username", "JohnDoe");

cmd.ExecuteNonQuery();

总结

在本教程中,我们学习了如何在 C#中连接 PostgreSQL 数据库并执行 CRUD 操作。首先,我们配置了数据库连接,然后演示了如何创建、读取、更新和删除数据。这些基本操作是任何应用程序开发的关键步骤,希望本教程对您有所帮助,让您更好地使用 C#和 PostgreSQL 进行数据库操作。