Koble til mysql med nodejs

Koble til mysql med nodejs
MySQL Server er en veldig populær databaseserver, og den støttes av stort sett brukte programmeringsspråk, for eksempel PHP, Python, Perl, Java, C#, etc. Det er en åpen kildekode-applikasjon, slik at hvem som helst kan laste ned denne applikasjonen for lagring, henting, oppdatering og slette data ved å bruke databasespørsmål. Du vil kreve at server- og klientpakkene blir installert i systemet ditt for å utføre forskjellige typer databaseoperasjoner i databaseserveren. MySQL Server blir nå populær for nodeutviklere også. Nodeutviklere begynner å bruke MySQL Server med MongoDB for noen spesielle funksjoner på MySQL -serveren. Hvordan du kan lage en forbindelse med MySQL-serveren ved hjelp av Node-Mysql-klienten vises i denne opplæringen.

Forutsetning:

Før du starter denne opplæringen, må du bekrefte at MySQL Server og klientpakker er installert og fungerer som det skal i systemet ditt. Hvis du installerer MySQL -serveren for første gang, er passordet til root -brukeren tomt som standard. Men du må angi passordet for at rotbrukeren skal opprette en forbindelse med MySQL -serveren ved å bruke Node-Mysql klient. Du kan sjekke denne opplæringen for å vite hvordan du endrer rotpassordet til MySQL -serveren.

Kjør følgende kommandoer for å fungere som rotbruker og koble til MySQL Server ved å bruke MySQL -klient.

$ sudo -i
$ mysql -u root -p

Skriv inn rotpassordet og kjør følgende SQL -kommandoer for å opprette en ny database, opprette en tabell i den databasen og sette inn noen poster i den tabellen.

Følgende kommando vil opprette en database som heter MYDB.

Opprette database MyDB;

Følgende kommando for å velge databasen for å utføre databaseoperasjoner.

Bruk MyDB;

Følgende kommando vil opprette en tabell som heter bok i databasen MYDB.

Lag tabellbok (
id int (6) usignert auto_increment primærnøkkel,
tittelen varchar (50) ikke null,
Forfatter varchar (50) ikke null,
pris int (5));

Følgende kommando vil sette inn fire poster i bok bord.

Sett inn bokverdier
(Null, 'Learning PHP og MySQL', 'Robin Nixon', 45),
(Null, 'Learning JQuery', 'Jonathan', 35),
(Null, 'Angular in Action', 'Jeremy', 50),
(Null, 'Mastering Laravel', 'Christopher', 55);

Installer MySQL -klient for NodeJS:

Kjør følgende kommando for å sjekke Nodejs er installert i systemet før du kjører kommandoen for å installere MySQL -klient av NodeJS. Det vil vise den installerte versjonen av NodeJs.

$ node -v

Hvis den ikke er installert, må du installere den ved å kjøre følgende kommando.

$ sudo apt-get installer nodejs

Du vil kreve en annen pakke som heter npm som skal installeres i systemet for å installere MySQL -klient for NodeJS. Hvis den ikke er installert før du kjører følgende kommando for å installere npm.

$ sudo apt-get install npm

Kjør nå følgende kommando for å oppdatere systemet.

$ sudo apt-get oppdatering

Følgende kommando vil installere mysql Modul for NodeJs som vil fungere som MySQL -klient.

$ npm installer mysql

Enkel MySQL -tilkobling ved hjelp av NodeJS:

Opprett en JS -fil som heter tilkobling1.JS med følgende skript for å opprette en forbindelse med den tidligere opprettede databasen som heter MYDB og les data fra bok bord. mysql Modulen importeres og brukes til å lage en enkel forbindelse med MySQL -serveren. Deretter vil en spørring bli utført for å lese alle poster fra bok tabell, hvis databasen er tilkoblet riktig. Hvis spørringen utføres riktig, så er alle poster over bok Tabellen vil bli skrevet ut i terminalen og databasetilkoblingen vil være lukket.

tilkobling1.JS

// importere mysql -modulen
La mysql = kreve ('mysql');
// Setup Database Connection Parameter
La tilkobling = mysql.CreateConnection (
Vert: 'Localhost',
Bruker: 'Root',
Passord: '1234',
Database: 'MyDB'
);
// koble til databasen
forbindelse.koble til (funksjon (e)
if (e)
// Vis feil messaage ved fiasko
Returkonsoll.Feil ('Feil:' + E.beskjed);

// Vis suksessmelding hvis det er koblet til
konsoll.Logg ('\ NCONNECTED til MySQL -serveren… \ n');
);
// Angi spørringsmeldingen
$ spørring = 'velg * fra bok';
// utfør databasespørsmålet
forbindelse.spørring ($ spørring, funksjon (e, rader)
if (e)
// Vis feilmeldingen
konsoll.Logg ("Feil oppstår ved å utføre spørringen.");
komme tilbake;

/* Vis de formaterte dataene som er hentet fra 'Book' -tabellen
bruker for loop */
konsoll.Logg ("The Records of Book Table: \ n");
konsoll.log ("Tittel \ t \ t \ t \ t forfatter \ t \ tprice \ n");
for (la rad med rader)
konsoll.log (rad ['tittel'], "\ t \ t", rad ['forfatter'], "\ t", "$", rad ['pris']);

);
// Lukk databasetilkoblingen
forbindelse.end (funksjon ()
konsoll.logg ('\ nConnection stengt.\ n ');
);

Produksjon:

Kjør følgende kommando for å utføre skriptet.

$ Node Connection1.JS

Følgende utgang vises etter å ha kjørt skriptet.

Samlet MySQL -tilkobling ved hjelp av NodeJS:

Lage en enkel MySQL -forbindelse med NodeJs ved bruk av mysql Modulen vises i forrige eksempel. Men mange brukere kan koble til databaseserveren om gangen gjennom applikasjonen når applikasjonen opprettes med Mysql database for produksjonsformål. Du vil kreve uttrykke Modul for å håndtere samtidige databasebrukere og støtte flere databaseforbindelser.

Kjør følgende kommando for å installere uttrykke modul.

$ NPM Install Express

Opprett en JS -fil som heter Tilkobling2.JS med følgende skript. Hvis du kobler til MySQL med følgende skript, vil 10 samtidige brukere kunne opprette en forbindelse med databaseserveren og hente data fra tabellen basert på spørringen. Det vil lage en forbindelse på Port 5000.

Tilkobling2.JS

// importere mysql -modulen
var mysql = krever ('mysql');
// Importer ekspressmodul
var express = krever ("ekspress");
// definere objekt for ekspressmodul
var app = express ();
// lage databasetilkobling for å håndtere 10 samtidige brukere
var basseng = mysql.CreatePool (
ConnectionLimit: 10,
Vert: 'Localhost',
Bruker: 'Root',
Passord: '1234',
Database: 'MyDB',
DEBUG: True
);
/* Lag samlet tilkobling med en database og les spesifikke poster fra en tabell over det
database */
funksjon håndtak_database (forespørsel, svar)
// få forbindelse
basseng.getConnection (funksjon (e, tilkobling)
if (e)
// Send feilmelding for mislykket tilkobling og avslutt
respons.JSON ("Code": 300, "Status": "Database Connection Errror");
komme tilbake;

// Vis suksessmelding i terminalen
konsoll.logg ('Database tilkoblet');
// Les bestemte poster fra bokbordet
forbindelse.spørring ("velg * fra boken der tittel som '%php%' eller tittel som
'%Laravel%' ", funksjon (e, rader) tilkobling.utgivelse();
hvis(!e)
// returner resultatsettet av spørringen hvis den blir utført
respons.JSON (rader);

);
// sjekk tilkoblingsfeilen oppstår eller ikke
forbindelse.på ('feil', funksjon (e)
respons.JSON ("Code": 300, "Status": "Database Connection Errror");
komme tilbake;
);
);

// Ring funksjonen for å lage tilkoblinger
app.få ("/", funksjon (forespørsel, svar) -
håndtak_database (forespørsel, svar);
);
// Lytt tilkoblingsforespørselen på port 5000
app.Hør (5000);

Produksjon:

Kjør manuset fra terminalen som forrige eksempel. Det vil vente på tilkoblingsforespørselen etter å ha kjørt skriptet.

$ node tilkobling2.JS

Nå, åpne enhver nettleser og gå til følgende URL for å sende en tilkoblingsforespørsel.

http: // localhost: 5000

Følgende utdata vises som et svar etter å ha utført spørringen.

Hvis du åpner terminalen nå, vil du se følgende utgang.

Ti tilkoblingsforespørsler kan sendes om gangen fra 10 nettlesere på den måten nevnt ovenfor.

Konklusjon:

De mest enkle måtene å jobbe med MySQL og NodeJs vises med to eksempler i denne opplæringen. Hvis du er en ny nodeutvikler og vil jobbe med MySQL -databasen, håper jeg at du vil kunne gjøre oppgaven din etter å ha lest denne opplæringen.