从Node.js连接到远程Microsoft SQL服务器

我想知道是否有人知道从Node.js连接到Microsoft SQL数据库的方法。 我知道MySQL驱动程序,但是我需要从MS SQL数据库中提取数据,而不是直接从Node.js中提取数据,而不是使用某种PHP脚本。

我怀疑你必须用JSON输出Web服务来包装你的SQL Server。 积极的一面,应该是相对容易的。

如果node.js中的JavaScript引擎可以做到这一点,那么要好一点(从How to connect to SQL Server database to JavaScript in the browser? ):

var connection = new ActiveXObject("ADODB.Connection") ; var connectionstring="Data Source=<server>;Initial Catalog=<catalog>;User ID=<user>;Password=<password>;Provider=SQLOLEDB"; connection.Open(connectionstring); var rs = new ActiveXObject("ADODB.Recordset"); rs.Open("SELECT * FROM table", connection); rs.MoveFirst while(!rs.eof) { document.write(rs.fields(1)); rs.movenext; } rs.close; connection.close; 

检查一个新的选项:

https://github.com/orenmazor/node-tds

(来自Node.js和Microsoft SQL Server )

我会推荐节点mssql ,这是一个很好的包装其他连接器,默认是我以前的select( Tedious )带来一个更好的接口。 这是一个JavaScript的implimentation,没有编译要求,这意味着你可以在Windows和非Windows环境中工作。

另一种select是,如果你不介意将.Net或Mono引入二进制桥,那么可以使用edge.js。 如果你想在node.js中利用.Net库,这可能是非常好的

node-tds被放弃, node-odbc不能和windows一起工作,MS node-sqlserver驱动似乎不能在非windows上工作(并且有一些愚蠢的要求)。

如果您从Linux连接到Mssql,则可以使用带有freetds odbc驱动程序的node-odbc( https://github.com/w1nk/node-odbc )。 我在生产中使用它,它比包装一个Web服务更快。

另一个select,从微软甚至,

http://www.microsoft.com/en-us/download/details.aspx?id=29995

或者通过odbc的linux sql客户端驱动程序:

http://www.microsoft.com/en-us/download/details.aspx?id=28160

2015年的新答案:ORM包Sequelize现在支持MS SQL,使用Tedious驱动程序。

这是我发现与Microsoft SQL Server交互的最佳方式。

就在今天,我发布了一个新的模块,仅适用于Windows,允许本地和asynchronous使用MSSQL。 它被称为TSQLFTW,目前支持连接和查询数据库。 它以JSON的forms返回结果。

看看这里的Github: https : //github.com/gfosco/tsqlftw

黑客新闻提交/评论: http : //news.ycombinator.com/item?id=3353389