PG(node-postgres)VS。续集

Posted

技术标签:

【中文标题】PG(node-postgres)VS。续集【英文标题】:PG (node-postgres) VS. sequelize 【发布时间】:2014-12-20 10:55:47 【问题描述】:

我只想问哪个数据库模块比较好,PG还是sequelize?我听说sequelize有时会出现事务问题。谢谢

【问题讨论】:

Sequelize 不是数据库模块,它是一个 ORM,它依赖于 PG 工作。 【参考方案1】:

PG 是一个原始驱动程序 - 它只允许我们向数据库发送查询,而 sequelize 是一个 ORM(对象关系映射器 - https://en.wikipedia.org/wiki/Object-relational_mapping) - 将对象映射到数据库条目的高级模块。

其中任何一个的使用取决于项目的规模。 如果项目是 100 行代码实用程序 - 我更喜欢原始驱动程序。 如果项目很大并且必须具有可扩展性和可维护性 - 我认为sequelize 更好。

同样使用sequelize,只需对代码进行少量更改,您就可以更改您使用的数据库 - 从 postgresql 到 mysql/sqlite。

值得注意的是,您可以在同一个项目中使用这两个模块 - 部分取决于事务,您可以使用 pgsequelize 用于其他部分

【讨论】:

对于大型项目,Data API 方法可行,pg 更好,客户端只调用 Data API(函数和存储过程),客户端没有 SQL。

以上是关于PG(node-postgres)VS。续集的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 node-postgres 将多行正确插入 PG?

使用 pg-promise 的连接池

node-postgres有个坑

heroku Postgres - 续集:主机没有 pg_hba.conf 条目

如何使用 node-postgres 进行批量插入

将 Async/Await 与 node-postgres 一起使用