Postgresql入门 - zLulus/My_Note GitHub Wiki

下载

https://www.postgresql.org/download/
需要翻墙

使用PgAdmin

PgAdmin是访问PostgreSQL数据库的图形化工具
连接数据库
91ef76c6a7efce1bac5eaec7a651f3deb48f6541
Navicat也可以连接PostgreSQL

PostgreSQL关于C#的数据驱动——Npgsql

官方资料:https://github.com/npgsql/npgsql
安装包

.net framework
EntityFramework6.Npgsql
https://github.com/npgsql/EntityFramework6.Npgsql
.net core
Npgsql.EntityFrameworkCore.PostgreSQL
Microsoft.EntityFrameworkCore.Tools
Microsoft.EntityFrameworkCore.Design
https://github.com/npgsql/Npgsql.EntityFrameworkCore.PostgreSQL

解决报错

The ADO.NET provider with invariant name 'Npgsql' is either not registered in the machine or application config file, or could not be loaded.

<system.data>
  <DbProviderFactories>
    <remove invariant="Npgsql" />
    <add name="Npgsql Data Provider" invariant="Npgsql" description=".Net Data Provider for PostgreSQL" type="Npgsql.NpgsqlFactory, Npgsql, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" support="FF" />
  </DbProviderFactories>
</system.data>

参考资料:
https://stackoverflow.com/questions/35425249/unable-to-find-or-load-npgsql-with-entity-framework
https://github.com/npgsql/npgsql/issues/1439

示例代码

https://github.com/zLulus/NotePractice/tree/dev3/Console/CodeLibraryForDotNetCore/UsePostgresql
https://github.com/zLulus/NotePractice/tree/dev3/Console/CodeLibrary/UsePostgresql

参考资料

https://github.com/npgsql/EntityFramework6.Npgsql
http://www.npgsql.org/efcore/index.html
https://docs.microsoft.com/en-us/ef/core/get-started/netcore/new-db-sqlite