Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come connettersi a SQL Server con l'autenticazione di Windows da Node.JS utilizzando il modulo mssql

Poiché questa è una risposta abbastanza visibile, volevo aggiungere un frammento di codice che funzionasse per me con Trusted Connection. Ci sono arrivato dalla risposta modificata di getglad.

const sql = require("mssql");
require("msnodesqlv8");
const conn = new sql.Connection({
  database: "db_name",
  server: "server_name",
  driver: "msnodesqlv8",
  options: {
    trustedConnection: true
  }
});
conn.connect().then(() => {
  // ... sproc call, error catching, etc
  // example: https://github.com/patriksimek/node-mssql#request
});

Usando una connessione affidabile, sono stato in grado di eseguire stored procedure, registrare l'output e chiudere la connessione senza problemi e msnodesqlv8 è stato aggiornato più di recente rispetto a qualsiasi altro driver (l'ultima versione è stata ottobre 2016 a partire dal 3/11/2016 ), quindi anche questa sembra essere una scelta sicura.

Ed ecco un esempio che utilizza [email protected] Le uniche modifiche sono il require iniziale, che estrae msnodesqlv8 da mssql e sql.Connection è ora sql.ConnectionPool. Sarà inoltre necessario modificare le chiamate alla procedura memorizzata poiché la risposta è diversa, indicata qui. Ringraziamo la risposta di Jon poiché ha aggiornato la mia prima di me!

const sql = require("mssql/msnodesqlv8");
const conn = new sql.ConnectionPool({
  database: "db_name",
  server: "server_name",
  driver: "msnodesqlv8",
  options: {
    trustedConnection: true
  }
});
conn.connect().then(() => {
  // ... sproc call, error catching, etc
  // example: https://github.com/patriksimek/node-mssql#request
});