Većina aplikacija iz stvarnog svijeta na ovaj ili onaj način komunicira s bazama podataka. Baze podataka olakšavaju opstanak, analizu i interakciju s podacima.

Većina programskih jezika nudi podršku za povezivanje aplikacija s bazama podataka kao što je PostgreSQL. Saznajte kako možete koristiti modul node-postgres za povezivanje aplikacije Node s PostgreSQL.

Kako započeti

Za početak povezivanja s lokalnom bazom podataka, morat ćete imati Instaliran je PostgreSQL poslužitelj.

PostgresSQL je jedan od najčešćih sustava relacijskih baza podataka zbog svoje fleksibilnosti i snage. Možete ga koristiti kao alternativu MySQL-u ako je vaš projekt složen ili tražite rješenje koje prihvaća etos otvorenog koda.

Izradite aplikaciju čvora

Prvi korak je stvaranje aplikacije Node koju ćete koristiti za testiranje koda veze. U željenoj mapi stvorite novu mapu.

mkdir postgres-čvor

Dođite do mape koju ste stvorili i inicijalizirajte npm.

CD postgres-čvor
npm init -y

Ova bi naredba trebala generirati a paket.json datoteka.

instagram viewer

Zatim stvorite novu datoteku i dajte joj naziv index.js. Povezat ćete Node s PostgreSQL u ovoj datoteci.

Koristite modul node-postgres

The čvor-postgres modul je npm paket koji vam omogućuje povezivanje i interakciju s PostgreSQL bazom podataka. Postoje dvije opcije koje možete koristiti za povezivanje Nodea s PostgreSQL-om pomoću modula node-postgres: jedan klijent ili skup veza. Dakle, što biste trebali koristiti?

Koristite jedan klijent ako trebate samo jednu statičku vezu u isto vrijeme. Međutim, ako trebate koristiti istodobne i višestruke zahtjeve, upotrijebite skup veza.

Instalirajte node-postgres

Pokrenite sljedeću naredbu u svom terminalu da instalirate node-postgres.

npm instalirati str

Ako koristite node >= 14.x, morat ćete instalirati [email protected] kasnije. Možete odrediti broj verzije tako da ga dodate naredbi za instalaciju na sljedeći način.

npm instalirati pg=8.7.3

Povezivanje na PostgreSQL

Modul node-postgres zahtijeva sljedeće vrijednosti za povezivanje s PostgreSQL bazom podataka.

  • PGUSER - PostgreSQL korisničko ime za povezivanje.
  • PGHOST - Naziv hosta poslužitelja na koji se spaja.
  • PGPASSWORD - Lozinka PostgreSQL poslužitelja.
  • PGDATABASE - Naziv baze podataka na koju se povezujete.
  • PGPORT - Broj porta za povezivanje na hostu poslužitelja.

Napravite .env datoteku i dodajte ove varijable, zamjenjujući odgovarajuće vrijednosti iz vaše baze podataka:

PGUSER=<PGUSER>
PGHOST=<PGHOST>
PGPASSWORD=<PGLOZKA>
PGDATABASE=<PGDATABAZA>
PGPORT=<PGPORT>

Instalirajte dotenv paket za pristup .env datoteci.

npm instalirati dotenv

U index.js, uvezite i konfigurirajte dotenv.

konst dotenv = zahtijevati("dotenv")
dotenv.config()

Povežite se s PostgreSQL bazom podataka pomoću jednog klijenta

Kod u nastavku pokazuje kako možete povezati Node s PostgreSQL poslužiteljem pomoću jednog klijenta.

konst {Klijent} = zahtijevati("str")
konst dotenv = zahtijevati("dotenv")
dotenv.config()

konst connectDb = asink () => {
probati {
konst klijent = novi Klijent({
korisnik: postupak.env.PGUSER,
domaćin: postupak.env.PGHOST,
baza podataka: postupak.env.PGDATABAZA,
zaporka: postupak.env.PGLOZKA,
luka: postupak.env.PGPORT
})

čekati client.connect()
const res = čekaj client.query('ODABERI * IZ neki_stol')
konzola.log (res)
čekati client.end()
} ulov (pogreška) {
konzola.log (pogreška)
}
}

connectDb()

Korištenje skupa veza

Kao što je već spomenuto, spremište veza vam omogućuje da napravite više zahtjeva za povezivanje s vašim poslužiteljem.

konst {Pool} = zahtijevati("str");
konst dotenv = zahtijevati("dotenv");
dotenv.config();

konst connectDb = asink () => {
probati {
konst bazen = novi Bazen({
korisnik: postupak.env.PGUSER,
domaćin: postupak.env.PGHOST,
baza podataka: postupak.env.PGDATABAZA,
zaporka: postupak.env.PGLOZKA,
luka: postupak.env.PGPORT,
});

čekati pool.connect()
const res = čekaj pool.query('ODABERI * IZ klijenti')
konzola.log (res)
čekati pool.end()
} ulov (pogreška) {
konzola.log (pogreška)
}
}

connectDb()

Gornji primjeri vam omogućuju kontrolu konfiguracije baze podataka putem .env datoteke. Međutim, također možete dostaviti ove konfiguracijske vrijednosti korištenjem standardnih varijabli okruženja. Ovaj pristup vam omogućuje jednostavno mijenjanje konfiguracije u vrijeme pokretanja.

Razmotrite sljedeći kod veze.

konst connectDb = asink () => {
probati {
konst bazen = novi Bazen();
const res = čekaj pool.query('ODABERI * IZ klijenti')
konzola.log (res)
čekati pool.end()
} ulov (pogreška) {
konzola.log (pogreška)
}
}

U ovom programu ne prosljeđujete objekt veze kao argument prilikom inicijalizacije Pool-a. Umjesto toga, morate navesti detalje veze kada pozovete program na sljedeći način:

PGUSER=<PGUSER> \
PGHOST=<PGHOST> \
PGPASSWORD=<PGLOZKA> \
PGDATABASE=<PGDATABAZA> \
PGPORT=<PGPORT> \
čvorindeks.js

Ovako povezivanje čvora s PostgreSQL-om omogućuje vam da napišete program koji se može višekratno koristiti.

Učinite više s PostgreSQL

Da biste stvorili aplikaciju koja komunicira s bazama podataka, prvo je morate povezati s bazom podataka. U ovom članku naučili ste kako povezati Node s PostgreSQL bazom podataka pomoću modula node-Postgres.

Osim PostgreSQL-a, postoje i drugi sustavi za upravljanje bazom podataka poput MySQL-a koje možete koristiti u svojoj aplikaciji. Alat baze podataka koji odaberete trebao bi biti najkompatibilniji s vašim potrebama za podacima.