Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Node.js и Microsoft SQL Server

Първоначалният въпрос е стар и сега използването на 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);
    });
});


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. При каскада за изтриване за таблица за саморефериране

  2. Как мога да разбера кога попълването на пълен текстов индекс на SQL приключи?

  3. Как да създадете псевдоним на потребителски дефиниран тип данни в SQL Server с помощта на T-SQL

  4. SQL Server 2000 - Свързан сървър

  5. Възстановяване на SQL Server 2017