.NET 操作 PostgreSQL遇到的問(wèn)題
PostgreSQL簡(jiǎn)介
PostgreSQL是一個(gè)功能非常強(qiáng)大的、源代碼開(kāi)放的客戶/服務(wù)器關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)。PostgreSQL最初設(shè)想于1986年,當(dāng)時(shí)被叫做Berkley Postgres Project。該項(xiàng)目一直到1994年都處于演進(jìn)和修改中,直到開(kāi)發(fā)人員Andrew Yu和Jolly Chen在Postgres中添加了一個(gè)SQL(Structured Query Language,結(jié)構(gòu)化查詢語(yǔ)言)翻譯程序,該版本叫做Postgres95,在開(kāi)放源代碼社區(qū)發(fā)放。
使用 NuGet 安裝組件
在 Visual Studio 中,項(xiàng)目上右鍵 -> 管理 NuGet 程序包。搜索 PostgreSQL。
有兩個(gè)在頂部的,一個(gè)是針對(duì) .NET Core 的,一個(gè)是針對(duì) .NET Framework 的。
使用
就像操作 SQL Server 那樣操作,只是幾個(gè)類換一下。
SqlConnection -> NpgsqlConnection
SqlDataAdapter -> NpgsqlDataAdapter
SqlCommand -> NpgsqlCommand
對(duì)了,連接字符串類似:
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”或它的某一個(gè)依賴項(xiàng)。系統(tǒng)找不到指定的文件。
一切就緒,可是提示上面這個(gè)錯(cuò)誤,我寫(xiě)一個(gè) System.ValueTuple(注意不是 Type) ,按 F12,向上追蹤,發(fā)現(xiàn)我的版本是 4.0.3.0,對(duì)不上。
我的 .NET Framework 是 4.6.2,我不想調(diào)整我的 .NET Framework 版本,于是我 降 Npgsql 的版本 ,降了好幾個(gè)都不行, 后來(lái)降到 3.2.0,可以了。
坑二、不支持的認(rèn)證模式
Authentication method not supported (Received: 10)
針對(duì)這個(gè)錯(cuò)誤,在目錄(參考): C:\Program Files\PostgreSQL\13\data
打開(kāi) pg_hba.conf 。
這里配置了各種環(huán)境下怎么連接,我是 IPv4,我就找到 IPv4,看到 METHOD 那列寫(xiě)的 scram-sha-256,將其改為 password ,成功。
關(guān)于這個(gè)文件的詳細(xì)配置說(shuō)明,可參考: https://www.postgresql.org/docs/9.1/auth-pg-hba-conf.html
當(dāng)然,因版本不同,這個(gè)文件可能位于不同的目錄,可通過(guò)SQL Shell 輸入 show hba_file; 查看:
到此這篇關(guān)于.NET 操作 PostgreSQL遇到的問(wèn)題的文章就介紹到這了,更多相關(guān).NET 操作 PostgreSQL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
.Net語(yǔ)言Smobiler開(kāi)發(fā)利用Gridview控件設(shè)計(jì)較復(fù)雜的表單
這篇文章主要為大家詳細(xì)介紹了.Net語(yǔ)言Smobiler開(kāi)發(fā)利用Gridview控件設(shè)計(jì)較復(fù)雜的表單,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09asp.net實(shí)現(xiàn)在非MVC中使用Razor模板引擎的方法
這篇文章主要介紹了asp.net實(shí)現(xiàn)在非MVC中使用Razor模板引擎的方法,較為詳細(xì)的分析了Razor模板引擎的使用技巧,需要的朋友可以參考下2015-06-06使用AjaxPro.Net框架實(shí)現(xiàn)在客戶端調(diào)用服務(wù)端的方法
AjaxPro.Net是一個(gè)優(yōu)秀的.net環(huán)境下的Ajax框架,用法很簡(jiǎn)單,可以查閱相關(guān)資料,本文檔是一個(gè)簡(jiǎn)單的實(shí)例講述使用AjaxPro的幾個(gè)關(guān)鍵點(diǎn)。2011-02-02ASP.NET MVC中異常處理&自定義錯(cuò)誤頁(yè)詳析
當(dāng)ASP.NET MVC程序出現(xiàn)了異常,怎么處理更加規(guī)范?下面這篇文章主要給大家介紹了關(guān)于ASP.NET MVC中異常處理&自定義錯(cuò)誤頁(yè)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04ASP.NET Core使用微軟官方類庫(kù)實(shí)現(xiàn)漢字轉(zhuǎn)拼音
這篇文章主要為大家詳細(xì)介紹了ASP.NET Core使用微軟官方類庫(kù)實(shí)現(xiàn)漢字轉(zhuǎn)拼音,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05ASP.NET MVC 中實(shí)現(xiàn)基于角色的權(quán)限控制的處理方法
在ASP.NET MVC中,通過(guò)使用其所提供的內(nèi)置2013-03-03.NET醫(yī)院公眾號(hào)系統(tǒng)線程CPU雙高問(wèn)題分析
這篇文章主要介紹了.NET醫(yī)院公眾號(hào)系統(tǒng) 線程CPU雙高分析,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04Asp.net Core與類庫(kù)讀取配置文件信息的方法
這篇文章主要給大家介紹了關(guān)于Asp.net Core與類庫(kù)讀取配置文件信息的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12C#.net 微信公眾賬號(hào)接口開(kāi)發(fā)
這篇文章主要介紹了C#.net 微信公眾賬號(hào)接口開(kāi)發(fā),需要的朋友可以參考下2016-05-05ASP.NET MVC中Controller控制器向View視圖傳值的幾種方式
這篇文章介紹了ASP.NET MVC中Controller控制器向View視圖傳值的幾種方式,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03