golang 上的数据库/sql 连接和 pgx 池有什么区别?

问题描述 投票:0回答:1

我正在尝试在由 postgresql DB 支持的 golang 上使用 ent

当前遗留代码使用 pgxpool 作为连接池。但是

ent
不支持pgx池,只支持
database/sql
的标准连接池。

两者有什么区别? PostgreSQL 数据库可以使用标准连接池吗?或者我应该使用 pgx 池吗?

postgresql go pgx ent
1个回答
1
投票

tl/博士;

  • database/sql - 是访问任何数据库引擎的接口
  • pgx - 是 postgres 驱动程序之一(pq 也是 postgres 驱动程序)
  • pgxpool - 是 pgx 的一部分,可以与 postgres 的连接池一起使用

数据库/sql 可以初始化为与 postgres 的 pgx 驱动程序一起使用。

db, err := sql.Open("pgx", databaseDsn)

PostgreSQL数据库可以使用标准连接池吗?或者 我应该为此使用 pgx 池吗?

这取决于你的需求

© www.soinside.com 2019 - 2024. All rights reserved.