2025年2月24日 星期一 甲辰(龙)年 腊月廿四 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > .net

.NET C#连接使用PostgreSQL数据库

时间:02-06来源:作者:点击数:44

.NET C#连接PostgreSQL数据库需要使用Npgsql驱动程序。Npgsql是.NET Framework和.NET Core中的一个开源PostgreSQL驱动程序。

要使用Npgsql,需要先在项目中添加引用。可以通过NuGet包管理器来添加引用。在包管理器控制台中,搜索“Npgsql”,然后选择“安装”。

C#连接使用PostgreSQL数据库

添加引用后,就可以开始连接PostgreSQL数据库了。连接数据库需要以下步骤:

创建一个NpgsqlConnection对象。

设置连接字符串。

打开连接。

连接字符串包含以下信息:

数据库服务器的地址

数据库的端口号

数据库的名称

用户名

密码

连接字符串的格式如下:

Host=<server_address>;Port=<port_number>;Database=<database_name>;Username=<username>;Password=<password>

例如,如果数据库服务器的地址是localhost,端口号是5432,数据库的名称是test,用户名是postgres,密码是123456,则连接字符串为:

Host=localhost;Port=5432;Database=test;Username=postgres;Password=123456

连接数据库的代码如下:

  • using Npgsql;
  • class Program
  • {
  • static void Main(string[] args)
  • {
  • // 创建一个NpgsqlConnection对象
  • NpgsqlConnection conn = new NpgsqlConnection("Host=localhost;Port=5432;Database=test;Username=postgres;Password=123456");
  • // 设置连接字符串
  • conn.ConnectionString = "Host=localhost;Port=5432;Database=test;Username=postgres;Password=123456";
  • // 打开连接
  • try
  • {
  • conn.Open();
  • Console.WriteLine("连接成功");
  • }
  • catch (Exception ex)
  • {
  • Console.WriteLine(ex.Message);
  • }
  • // 关闭连接
  • conn.Close();
  • }
  • }

连接成功后,就可以使用Npgsql提供的API来操作数据库了。例如,可以使用NpgsqlCommand对象来执行SQL语句。

执行SQL语句的代码如下:

  • using Npgsql;
  • class Program
  • {
  • static void Main(string[] args)
  • {
  • // 创建一个NpgsqlConnection对象
  • NpgsqlConnection conn = new NpgsqlConnection("Host=localhost;Port=5432;Database=test;Username=postgres;Password=123456");
  • // 设置连接字符串
  • conn.ConnectionString = "Host=localhost;Port=5432;Database=test;Username=postgres;Password=123456";
  • // 打开连接
  • try
  • {
  • conn.Open();
  • // 创建一个NpgsqlCommand对象
  • NpgsqlCommand cmd = new NpgsqlCommand("SELECT * FROM users", conn);
  • // 执行SQL语句
  • NpgsqlDataReader reader = cmd.ExecuteReader();
  • // 遍历结果集
  • while (reader.Read())
  • {
  • // 获取结果集中的字段值
  • int id = reader["id"].Value<int>();
  • string name = reader["name"].Value<string>();
  • int age = reader["age"].Value<int>();
  • // 输出结果
  • Console.WriteLine($"id={id}, name={name}, age={age}");
  • }
  • // 关闭连接
  • conn.Close();
  • }
  • catch (Exception ex)
  • {
  • Console.WriteLine(ex.Message);
  • }
  • }
  • }

以上代码将查询users表中的数据,并将结果输出到控制台。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门