.Net2.0连接PG数据注意事项

.Net2.0连接PG数据注意事项

第一次用.net操作PG[.NET2.0]

一:Npgsql版本问题

1:如果是.net2.0  建议用2.0.11.0[NuGet搜索npgsql第一个的最低版本]

如果是.net3.5 最高只能到2.2.6

2.2.7就需要.net4

二:SqlHelp操作

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

SqlConnection -> NpgsqlConnection

SqlDataAdapter -> NpgsqlDataAdapter

SqlCommand -> NpgsqlCommand

三:连接问题

错误1:

Only AuthenticationClearTextPassword and AuthenticationMD5Password supported for now. Received: 10

错误2:Authentication method not supported (Received: 10)

需要修改数据库配置文件pg_hba.conf

METHOD 那列写的 scram-sha-256,将其改为 password

如果需要允许所有IP都能访问

IPv4修改ADDRESS列为:0.0.0.0/0

IPv6修改ADDRESS列为:::0/0

 

四:增删改查问题

连接字符串:

Server={datasouce};User Id={user}; Password = {pwd}; Database = {database}; Port = {port}

网上有写法如下(本人没有验证):

server={datasouce};port={port};database={database};uid={user};pwd={pwd}

1:查询

当表名/列名出现了大写, sql语句需要带双引号,否则报错,下面的语句少了引号就会报错:

SELECT * FROM "DT_Lay2021"

SELECT "LayName"  FROM "DT_Lay2021"

SELECT "LayName","LayMemo", "LayColor",sortid FROM "DT_Lay2021"

当表名/列名没有大写时,写法同mssql:

SELECT * FROM  dt_lay

五:MSSQL数据库转PG数据

 

内容参考:http://www.cftea.com/c/2021/01/13133.asp

原文地址:https://www.cnblogs.com/happyqiang/p/15466816.html