sql >> Databáze >  >> RDS >> Sqlserver

Připojte se k databázi SQL Server z Node.js

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)



  1. Flask-SQLAlchemy kontroluje, zda databázový server reaguje

  2. Jak vytvořím oddíl pro každý měsíc aktuálního roku

  3. Najděte překrývající se řádky (datum/čas) v jedné tabulce

  4. Nelze se připojit k MariaDB pomocí DBeaver