Je to hlavně pro budoucí čtenáře. Protože se otázka (alespoň název) zaměřuje na "připojení k databázi serveru SQL z node js", rád bych uvedl modul uzlu "mssql".
V tuto chvíli máme stabilní verzi ovladače Microsoft SQL Server pro NodeJs ("msnodesql") k dispozici zde:https://www.npmjs.com/package/msnodesql . I když odvádí skvělou práci při nativní integraci s databází Microsoft SQL Server (než jakýkoli jiný modul uzlu), je třeba poznamenat několik věcí.
"msnodesql" vyžaduje několik předpokladů (jako je python, VC++, nativní klient SQL atd.) k instalaci na hostitelský počítač. Díky tomu je vaše aplikace „uzel“ závislá na „Windows“. Pokud vám vyhovuje nasazení založené na "Windows", nejlepší je práce s "msnodesql".
Na druhé straně existuje další modul s názvem „mssql“ (k dispozici zde https://www.npmjs .com/package/mssql ), který může pracovat s "nudným" nebo "msnodesql" na základě konfigurace. I když tento modul nemusí být tak komplexní jako „msnodesql“, do značné míry řeší většinu potřeb.
Pokud byste chtěli začít s "mssql", narazil jsem na jednoduché a přímočaré video, které vysvětluje připojení k databázi Microsoft SQL Server pomocí NodeJs zde:https://www.youtube.com/watch?v=MLcXfRH1YzE
Zdrojový kód výše uvedeného videa je k dispozici zde:http://techcbt.com/Post/341/Node-js-basic-programming-tutorials-videos/how-to-connect-to-microsoft -sql-server-using-node-js
Pro případ, že by výše uvedené odkazy nefungovaly, uvádím zdrojový kód zde:
var sql = require("mssql");
var dbConfig = {
server: "localhost\\SQL2K14",
database: "SampleDb",
user: "sa",
password: "sql2014",
port: 1433
};
function getEmp() {
var conn = new sql.Connection(dbConfig);
conn.connect().then(function () {
var req = new sql.Request(conn);
req.query("SELECT * FROM emp").then(function (recordset) {
console.log(recordset);
conn.close();
})
.catch(function (err) {
console.log(err);
conn.close();
});
})
.catch(function (err) {
console.log(err);
});
//--> another way
//var req = new sql.Request(conn);
//conn.connect(function (err) {
// if (err) {
// console.log(err);
// return;
// }
// req.query("SELECT * FROM emp", function (err, recordset) {
// if (err) {
// console.log(err);
// }
// else {
// console.log(recordset);
// }
// conn.close();
// });
//});
}
getEmp();
Výše uvedený kód je docela samozřejmý. Definujeme parametry připojení db (v objektu JS "dbConfig") a poté použijeme objekt "Connection" pro připojení k SQL Serveru. K provedení příkazu "SELECT" v tomto případě používá objekt "Request", který interně pracuje s objektem "Connection". Kód vysvětluje obě varianty použití provedení na základě „slibu“ a „zpětného volání“.
Výše uvedený zdrojový kód vysvětluje pouze připojení k databázi serveru SQL a provedení dotazu SELECT. Můžete to snadno posunout na další úroveň pomocí následující dokumentace uzlu "mssql" dostupné na adrese:https:/ /www.npmjs.com/package/mssql
AKTUALIZACE: K dispozici je nové video, které provádí operace CRUD pomocí čistého standardu Node.js REST (s Microsoft SQL Server) zde:https://www.youtube.com/watch?v=xT2AvjQ7q9E . Je to fantastické video, které vysvětluje vše od začátku (má sakra hodně kódu a nebude tak příjemné vysvětlovat/kopírovat celý kód zde)