18

我对节点很陌生,我想知道是否有任何标准的、开放的 API 可以让我远离所有不同的数据库特性。

任何与教程或文档的链接都会非常受欢迎。

4

5 回答 5

5

Node 没有“标准”数据库抽象层,但请看一下Node-DBI,它是开源的并在 GitHub 上维护。可能还有其他的,但是这个有一个很好的接口和几个适配器。

于 2013-01-25T02:13:08.007 回答
4

我认为node-jdbc是一个经常更新的综合模块。它的文档也可以在 github 上访问。

于 2016-01-15T20:23:05.413 回答
3

我不知道,查看官方节点文档并没有列出任何此类内容,这令人失望。

如果您不反对使用 ORM,那么Sequelize是一个不错的选择,它只处理 SQL 的一个子集,但它. 这个项目看起来像是在努力做你描述的事情;但是,该项目看起来像是很久以前上次更新的。

于 2013-01-25T02:05:12.417 回答
3

不完全是,Node.js 的Loopback框架具有类似 ORM 的数据源连接器,允许您通过通用语法连接到许多数据源。它是一个完整的企业级框架,因此还有许多其他组件。Sails.js 等其他框架也有类似的组件。

Sequelize是适用于 PostgreSQL、MySQL、SQLite 和 MSSQL 的出色 ORM。

TypeORM也很棒,支持 MySQL、PostgreSQL、MariaDB、SQLite、MS SQL Server、Oracle、SAP Hana、WebSQL 数据库。适用于 NodeJS、浏览器、Ionic、Cordova 和 Electron 平台。

于 2018-12-11T22:32:29.927 回答
1

虽然不完全像 JDBC 或 JPA,但 knex似乎是多个数据库之上的一个很好的 SQL 抽象。

Knex.js 是一个“包含电池”的 SQL 查询构建器,适用于 Postgres、MSSQL、MySQL、> MariaDB、SQLite3、Oracle 和 Amazon Redshift,旨在灵活、便携、> 和有趣的使用。

我还没有真正使用过它,但考虑到荒凉的景观,它似乎是一个不错的选择。

于 2019-05-18T20:30:46.133 回答