Първоначалният въпрос е стар и сега използването на node-mssql, както е отговорено от @Patrik Šimek, което обвива досадно, както е отговорено от @Tracker1, е най-добрият начин.
Драйверът на Windows/Azure node-sqlserver, както е посочено в приетия отговор, изисква да инсталирате луд списък с предпоставки:Visual C++ 2010, SQL Server Native Client 11.0, python 2.7.x и вероятно също Windows 7 SDK за 64-битов на вашия сървър. Ако питате мен, не искате да инсталирате всички тези GB софтуер на вашия Windows Server.
Наистина искате да използвате досадно. Носъщо използвайте node-mssql, за да го обвиете и да направите кодирането много по-лесно.
Актуализация през август 2014 г.
- И двата модула все още се поддържат активно. На проблемите се отговаря доста бързо и ефективно.
- И двата модула поддържат SQL Server 2000 – 2014
- Поточно предаване се поддържа от node-mssql 1.0.1
Актуализация февруари 2015 г. – 2.x (стабилна, npm)
- Актуализиран до най-новата Tedious 1.10
- Обещания
- Направете заявка към поток от обекти
- Подробни SQL грешки
- Обработка на прекратяване на транзакция
- Интегрирани проверки на типа
- CLI
- Дребни поправки
Това е просто досадно:
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, който има Tedious като зависимост. Използвайте това!
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);
});
});