我只想问哪个数据库模块更好,PG还是续集?我听说续作有时候交易会有问题。谢谢
klr1opcd1#
PG是一个原始驱动程序-它只是允许我们向数据库发送查询,而sequelize是一个ORM(对象关系Map器-https://en.wikipedia.org/wiki/Object-relational_mapping)-高级模块,将对象Map到数据库条目。其中任何一个的使用取决于项目的规模。如果项目是一个100行代码的实用程序-我更喜欢原始驱动程序。如果项目非常大,并且必须是可扩展和可维护的-我认为sequelize更好。同样使用sequelize,只需很少的代码更改,就可以更改您使用的数据库-从postgresql到mysql/sqlite。值得注意的是,您可以在同一个项目中使用这两个模块-部分取决于事务,您可以使用pg,其他部分使用sequelize。
sequelize
pg
vaj7vani2#
Sequelize支持两种类型的事务,托管事务和非托管事务。在非托管事务中,用户通过调用sequelize方法手动定义提交和回滚。在托管事务中,sequelize在出现错误时自动回滚事务。至于node-postgres和sequelize则值得关注。以下是一些利弊。node-progress:
Sequelize
node-postgres
node-progress
Sequelize:
node-postgress
希望这能帮上忙。
2条答案
按热度按时间klr1opcd1#
PG是一个原始驱动程序-它只是允许我们向数据库发送查询,而sequelize是一个ORM(对象关系Map器-https://en.wikipedia.org/wiki/Object-relational_mapping)-高级模块,将对象Map到数据库条目。
其中任何一个的使用取决于项目的规模。如果项目是一个100行代码的实用程序-我更喜欢原始驱动程序。如果项目非常大,并且必须是可扩展和可维护的-我认为
sequelize
更好。同样使用
sequelize
,只需很少的代码更改,就可以更改您使用的数据库-从postgresql到mysql/sqlite。值得注意的是,您可以在同一个项目中使用这两个模块-部分取决于事务,您可以使用
pg
,其他部分使用sequelize
。vaj7vani2#
Sequelize
支持两种类型的事务,托管事务和非托管事务。在非托管事务中,用户通过调用sequelize
方法手动定义提交和回滚。在托管事务中,sequelize
在出现错误时自动回滚事务。至于
node-postgres
和sequelize
则值得关注。以下是一些利弊。node-progress
:Sequelize
:node-postgress
这样的简单原始驱动程序有更陡峭的学习曲线。希望这能帮上忙。