有没有办法让我的Node.js应用程序与Microsoft SQL进行通信?我还没见过有什么MS SQL驱动程序呢?
我正在把一个非常简单的应用程序在一起,需要能够与现有的MS数据库通信(否则我会去mongoDB或Redis)
发布于 2012-06-08 07:00:50
我们刚刚发布了用于SQL Server连接的Node.JS的预览驱动程序。你可以在这里找到它们:http://blogs.msdn.com/b/sqlphp/archive/2012/06/08/introducing-the-microsoft-driver-for-node-js-for-sql-server.aspx
发布于 2014-03-26 18:43:56
最初的问题很老了,现在使用@Patrik tracker1回答的包装Tedious的node-mssql是最好的方法。
接受答案中提到的Windows/Azure node-sqlserver driver要求您在服务器上安装一大堆必备软件: Visual C++ 2010、SQL server Native Client 11.0、Python2.7.x以及Windows7SDK(可能还有64位)。如果你问我,你不会想在你的Windows服务器上安装所有这些GB的软件。
你真的想使用Tedious。但也使用node-mssql对其进行包装,使编码变得更容易。
更新2014年8月
更新2015年2月- 2.x (稳定,npm)
类型已更新为对object stream
这是纯Tedious
var Connection = require('tedious').Connection;
var Request = require('tedious').Request;
var config = {
server: '192.168.1.212',
userName: 'test',
password: 'test'
};
var connection = new Connection(config);
connection.on('connect', function(err) {
executeStatement();
}
);
function executeStatement() {
request = new Request("select 42, 'hello world'", function(err, rowCount) {
if (err) {
console.log(err);
} else {
console.log(rowCount + ' rows');
}
connection.close();
});
request.on('row', function(columns) {
columns.forEach(function(column) {
if (column.value === null) {
console.log('NULL');
} else {
console.log(column.value);
}
});
});
request.on('done', function(rowCount, more) {
console.log(rowCount + ' rows returned');
});
// In SQL Server 2000 you may need: connection.execSqlBatch(request);
connection.execSql(request);
}这就是node-mssql,它有一个繁琐的依赖项。使用这个!
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);
});
});发布于 2012-01-06 14:34:08
最近刚刚发布了几个新的node.js SQL server客户端。我写了一个叫node-tds的,还有一个叫tedious的
https://stackoverflow.com/questions/5156806
复制相似问题