• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

.NET 操作 PostgreSQL遇到的问题

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

PostgreSQL简介

PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统(RDBMS)。PostgreSQL最初设想于1986年,当时被叫做Berkley Postgres Project。该项目一直到1994年都处于演进和修改中,直到开发人员Andrew Yu和Jolly Chen在Postgres中添加了一个SQL(Structured Query Language,结构化查询语言)翻译程序,该版本叫做Postgres95,在开放源代码社区发放。

使用 NuGet 安装组件

在 Visual Studio 中,项目上右键 -> 管理 NuGet 程序包。搜索 PostgreSQL。

有两个在顶部的,一个是针对 .NET Core 的,一个是针对 .NET Framework 的。

使用

就像操作 SQL Server 那样操作,只是几个类换一下。

SqlConnection ->  NpgsqlConnection

SqlDataAdapter ->  NpgsqlDataAdapter

SqlCommand ->  NpgsqlCommand

对了,连接字符串类似:

Server=127.0.0.1; Port=5432; User Id=postgres; Password=pwd; Database=test;

坑一、未能加载文件或程序集 System.ValueTuple

未能加载文件或程序集“System.ValueTuple, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51”或它的某一个依赖项。系统找不到指定的文件。

一切就绪,可是提示上面这个错误,我写一个 System.ValueTuple(注意不是 Type) ,按 F12,向上追踪,发现我的版本是 4.0.3.0,对不上。

我的 .NET Framework 是 4.6.2,我不想调整我的 .NET Framework 版本,于是我 降 Npgsql 的版本 ,降了好几个都不行, 后来降到 3.2.0,可以了。

坑二、不支持的认证模式

Authentication method not supported (Received: 10)

针对这个错误,在目录(参考): C:\Program Files\PostgreSQL\13\data

打开 pg_hba.conf 。

这里配置了各种环境下怎么连接,我是 IPv4,我就找到 IPv4,看到 METHOD 那列写的 scram-sha-256,将其改为 password ,成功。

关于这个文件的详细配置说明,可参考: https://www.postgresql.org/docs/9.1/auth-pg-hba-conf.html

当然,因版本不同,这个文件可能位于不同的目录,可通过SQL Shell 输入 show hba_file; 查看:

 

到此这篇关于.NET 操作 PostgreSQL遇到的问题的文章就介绍到这了,更多相关.NET 操作 PostgreSQL内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界!


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
详解如何在ASP.NET Core Web API中以三种方式返回数据发布时间:2022-02-05
下一篇:
.NET+PostgreSQL实践与避坑指南(推荐)发布时间:2022-02-05
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap