Sql server Node.js和Microsoft SQL Server
有没有办法让我的Node.js应用程序与Microsoft SQL通信? 我还没有在野外看到任何MS SQL驱动程序 我正在组装一个非常简单的应用程序,需要能够与现有的MS SQL数据库通信(否则我会使用mongoDB或Redis)您可以使用: node.js的TDS协议的激动人心的实现,允许与sql server通信 用法:Sql server Node.js和Microsoft SQL Server,sql-server,node.js,node-mssql,tedious,Sql Server,Node.js,Node Mssql,Tedious,有没有办法让我的Node.js应用程序与Microsoft SQL通信? 我还没有在野外看到任何MS SQL驱动程序 我正在组装一个非常简单的应用程序,需要能够与现有的MS SQL数据库通信(否则我会使用mongoDB或Redis)您可以使用: node.js的TDS协议的激动人心的实现,允许与sql server通信 用法: var mssql = require('./mssql'); var sqlserver = new mssql.mssql(); sqlserver.connect(
var mssql = require('./mssql');
var sqlserver = new mssql.mssql();
sqlserver.connect({'Server':__IP__,'Port':'1433','Database':'','User Id':'','Password':''});
var result = sqlserver.execute("SELECT * FROM wherever;");
该链接仅详细说明了sql 2000解决方案,而不是sql 2005或sql 2008,并且该代码只允许发送sql文本,不允许执行存储过程
真正的解决方案是在linux服务器或windows机器上的虚拟linux服务器上安装node JS,然后转到microsoft网站下载JDBC java驱动程序,并在linux服务器或linux虚拟服务器上安装这些microsoft ms sql java JDBC驱动程序。最近刚刚发布了两个新的node.js sql server客户端。我写了一个名为,还有一个名为TSQLFTW-T-SQL For The WIN(dows)-由Fosco Marotto编写
这是一个C++和ADO.NET托管代码解决方案,带有一个No.js可以导入和使用的C++包装器。p>
如果你知道.NET,你可以试试WCF数据服务(ADO.NET数据服务);编写用于数据访问的WCF应用程序,并使用odata(REST on steroids)与数据库交互
- WCF数据服务:
- 小田:
如果您喜欢SOA并使用SQLServer2005,那么您可以查看针对MicrosoftSQLServer2005的本机XMLWeb服务
您可以将SQL Server作为web服务(HTTP、SOAP)访问。如果您在.NET上运行,请查看entityspaces.js,我们正在为Node.js创建一个完整的通用ORM,它不需要WCF JSON服务
如果您使用的是MSFT后端技术,您现在就可以使用它,但是,我们正在创建一个universal Node.js ORM,很快就会有更多信息我们刚刚发布了用于SQL Server连接的Node.js预览驱动程序。你可以在这里找到它们: Microsoft(Windows Azure团队)刚刚发布了SQL SERVER的节点驱动程序 据我所知,它没有NPMyert的软件包,但它是开源的。以及接受社区捐款 简介博文如下:
有来自Microsoft的更新。这里是一系列的博客帖子(和)。(重复我从另一个问题中得到的答案) 我建议,这是一个很好的其他连接器包装器,默认是我以前的选择()带来了更好的接口。这是一个JavaScript实现,没有编译要求,这意味着您可以在windows和非windows环境中工作 如果您不介意引入带有二进制桥的.Net或Mono,另一个选择是使用。如果您想利用node.js中的.Net库,这会非常好
已被放弃,无法与windows一起使用,并且MS驱动程序似乎无法在非windows上工作(并且有一些愚蠢的要求)。您可以使用另一个模块-。它使用其他TDS模块作为驱动程序,并提供易于使用的统一接口。它还添加了额外的功能和错误修复 额外功能:
- 多个MSSQL驱动程序的统一接口
- 与事务和已准备语句的连接池
- 所有驱动程序的参数化存储过程
- 地理和几何CLR类型的序列化
- 智能JS数据类型到SQL数据类型映射器
- 支持承诺和标准回调
所接受的答案中所提到的需要安装一个疯狂的先决条件列表:VisualC++ 2010、SQL Server本机客户端11、Python 2.7 .x以及服务器上64位的Windows 7 SDK。如果你问我的话,你不想在你的Windows服务器上安装所有这些GB的软件
你真的想用。但是也可以使用来包装它,使编码更加容易 2014年8月更新- 两个模块仍在积极维护。对问题的反应相当迅速和有效
- 这两个模块都支持SQL Server 2000-2014
- 自节点mssql 1.0.1起支持流式传输
- 更新至最新的乏味1.10
- 许诺
- 对对象流的管道请求
- 详细的SQL错误
- 事务中止处理
- 集成类型检查
- CLI
- 小修
var sql = require('mssql');
var config = {
server: '192.168.1.212',
user: 'test',
password: 'test'
};
sql.connect(config, function(err) {
var request = new sql.Request();
request.query("select 42, 'hello world'", function(err, recordset) {
console.log(recordset);
});
});
Node.js SQL Server驱动程序似乎非常不成熟——有一堆不同的项目,它们具有不同的依赖性、性能和完整性级别,但没有一个能够激发信心 我建议使用。这充分利用了.NET成熟的数据库驱动程序生态系统,并且只依赖于.NET(如果您在Windows上运行node,这是一个很简单的方法——如果没有,但我还没有尝试过) 下面是一个使用edge sql的节点示例(server.js)(注意,您需要按照edge sql文档将连接字符串放入环境变量中):
您还可以利用.NET访问其他数据库,如Oracle。我已经给出了该方法的一个例子。截至2016年5月的状态如下 用于节点的官方Microsoft SQL驱动程序名为,已多年未更新 这个平台上有一个新的fork,名为,它与节点版本0.12.x一起工作。和>=4.1.x。该fork还具有用于x64和x86目标的预编译二进制文件 该软件包在NPM as上提供 我推荐这个软件包,因为它是轻量级的(有
var sql = require('mssql');
var config = {
server: '192.168.1.212',
user: 'test',
password: 'test'
};
sql.connect(config, function(err) {
var request = new sql.Request();
request.query("select 42, 'hello world'", function(err, recordset) {
console.log(recordset);
});
});
var edge = require('edge');
// edge-sql has built in support for T-SQL / MSSQL Server
var getData = edge.func('sql', function () {/*
select top 10 * from sometable
*/
});
getData(null, function (error, result) {
if (error) throw error;
console.log(result);
});