La question d'origine est ancienne et maintenant, à l'aide de nœud-mssql comme répondu par @Patrik Šimek qui encapsule Fastidieux comme répondu par @Tracker1 est la meilleure façon d'aller.
La Windows/Azure nœud-sqlserver pilote comme mentionné dans l'acceptation de réponse nécessite l'installation d'un fou de la liste de conditions préalables: Visual C++ 2010, SQL Server Native Client 11.0, python 2.7.x et probablement aussi Windows 7 SDK pour 64-bit sur votre serveur. Vous ne souhaitez pas installer tous ces GO de logiciel sur votre ordinateur Windows Server si vous me demandez.
Vous voulez vraiment utiliser Fastidieux. Mais aussi l'utilisation de nœud-mssql pour l'envelopper et faire le codage d'un beaucoup plus facile.
Mise à jour août 2014:
- Les deux modules sont toujours activement maintenu. Les questions sont a répondu très rapidement et efficacement.
- Les deux modules en charge de SQL Server 2000 - 2014
- Streaming en charge depuis le nœud-mssql 1.0.1
C'est simple, clair Fastidieux:
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);
}
Voici nœud-mssql qui est Pénible car une dépendance. L'utilisation de ce!
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);
});
});