我正在为 Node.js 上的 SQL Server 寻找 ORM 映射器。长话短说,我们有一个 SQL Server 正在运行,现在我们想使用 node.js 来构建从数据库中提取数据的 Web 服务。
你知道任何在 Node.js 上支持 SQL Server 的 ORM 吗?
我知道有这种乏味的方法可以帮助连接到 SQL Server,但它没有 ORM。
谢谢
我正在为 Node.js 上的 SQL Server 寻找 ORM 映射器。长话短说,我们有一个 SQL Server 正在运行,现在我们想使用 node.js 来构建从数据库中提取数据的 Web 服务。
你知道任何在 Node.js 上支持 SQL Server 的 ORM 吗?
我知道有这种乏味的方法可以帮助连接到 SQL Server,但它没有 ORM。
谢谢
到目前为止,SQL Server 尚未在 Node.js 社区中获得大量支持。而且,由于大多数 Node.js 生态系统都是由社区驱动的,因此您的选择可能相当有限。
这并不是说没有计划增加对它的支持。只是没有多少人实现了它。示例: 的作者sequelize
已声明最终添加支持的意图。
现在,如果获得以列作为键的普通 s 就足够了Object
,微软自己的方法可能msnodesql
是一个不错的选择:query()
sql.query(conn_str, "SELECT 1 as X, 'ABC', 0x0123456789abcdef ", function (err, results) {
assert.ifError(err);
var buffer = new Buffer('0123456789abcdef', 'hex');
var expected = [{ 'X': 1, 'Column1': 'ABC', 'Column2': buffer}];
assert.deepEqual(results, expected, "Results don't match");
done();
});
我建议看看Prisma。我们刚刚宣布了对 SQL Server 的预览支持。
这是一个强调类型安全和开发人员体验的 ORM。与通常将表映射到类的传统 ORM 不同,Prisma 将查询映射到类型(在 TypeScript 中)并从查询中返回纯对象。
要开始使用 Prisma 和 SQL Server,请查看此示例并在文档中从头开始指南。
我喜欢Node-odbc,我认为某种 ODBC 抽象可能是 NodeJS 最好的所有 RDBMS
我正在使用Bookshelf ORM,它通过对Knex.js的依赖内置了对 MS SQL Server 的支持,尽管它没有在 Bookshelf 网站上明确列出。
在书架初始化时指定client: 'mssql'
。
看看mssql-orm。它支持将大型对象图写入 SQL Server,但具有非常轻量级的 API:
var person = db.model({table: 'people'});
var bob = person({
name: 'bob'
});
bob.save();