Většina aplikací v reálném světě spolupracuje s databázemi tak či onak. Databáze usnadňují uchování, analýzu a interakci s daty.

Většina programovacích jazyků nabízí podporu pro připojení aplikací k databázím, jako je PostgreSQL. Přečtěte si, jak můžete použít modul node-postgres k připojení aplikace Node k PostgreSQL.

Jak začít

Chcete-li začít připojením k místní databázi, musíte mít PostgreSQL server nainstalován.

PostgresSQL je jedním z nejrozšířenějších relačních databázových systémů díky své pružnosti a síle. Můžete zvážit jeho použití jako alternativu k MySQL, pokud je váš projekt složitý nebo hledáte řešení, které zahrnuje étos open source.

Vytvořte aplikaci Node

Prvním krokem je vytvoření aplikace Node, kterou budete používat k testování kódu připojení. V preferované složce vytvořte novou složku.

mkdir postgres-uzel

Přejděte do složky, kterou jste vytvořili, a inicializujte npm.

CD postgres-uzel
npm init -y

Tento příkaz by měl vygenerovat a package.json soubor.

Dále vytvořte nový soubor a pojmenujte jej index.js. V tomto souboru připojíte Node k PostgreSQL.

instagram viewer

Použijte modul node-postgres

The uzel-postgres module je balíček npm, který vám umožňuje připojit se k databázi PostgreSQL a pracovat s ní. Existují dvě možnosti, které můžete použít k propojení Node s PostgreSQL pomocí modulu node-postgres: jeden klient nebo fond připojení. Co byste tedy měli použít?

Pokud potřebujete pouze jedno statické připojení najednou, použijte jednoho klienta. Pokud však potřebujete použít souběžné a více požadavků, použijte fond připojení.

Nainstalujte node-postgres

Spusťte ve svém terminálu následující příkaz a nainstalujte node-postgres.

npm Nainstalujte str

Pokud používáte uzel >= 14.x, budete muset nainstalovat [email protected] nebo později. Číslo verze můžete určit tak, že jej připojíte k instalačnímu příkazu, jako je tento.

npm Nainstalujte pg=8.7.3

Připojení k PostgreSQL

Modul node-postgres vyžaduje pro připojení k databázi PostgreSQL následující hodnoty.

  • PGUSER - uživatelské jméno PostgreSQL pro připojení jako.
  • PGHOST – Název hostitele serveru, ke kterému se chcete připojit.
  • PGPASSWORD - Heslo serveru PostgreSQL.
  • PGDATABASE – Název databáze, ke které se připojujete.
  • PGPORT – Číslo portu, ke kterému se chcete připojit na hostitelském serveru.

Vytvořte soubor .env a přidejte tyto proměnné, nahraďte odpovídajícími hodnotami z vaší databáze:

PGUSER=<PGUSER>
PGHOST=<PGHOST>
PGPASSWORD=<PGPASSWORD>
PGDATABASE=<PGDATABÁZE>
PGPORT=<PGPORT>

Chcete-li získat přístup k souboru .env, nainstalujte balíček dotenv.

npm Nainstalujte dotenv

v index.js, importovat a konfigurovat dotenv.

konst dotenv = vyžadovat("dotenv")
dotenv.config()

Připojte se k databázi PostgreSQL pomocí jediného klienta

Níže uvedený kód ukazuje, jak můžete připojit Node k serveru PostgreSQL pomocí jediného klienta.

konst { Klient } = vyžadovat("pg")
konst dotenv = vyžadovat("dotenv")
dotenv.config()

konst connectDb = asynchronní () => {
Snaž se {
konst klient = Nový Klient({
uživatel: proces.env.PGUSER,
hostitel: proces.env.PGHOST,
databáze: proces.env.PGDATABÁZE,
Heslo: proces.env.PGHESLO,
přístav: proces.env.PGPORT
})

čekat client.connect()
const res = wait client.query('VYBRAT * Z some_table')
řídicí panel.log (res)
čekat client.end()
} úlovek (chyba) {
řídicí panel.log (chyba)
}
}

connectDb()

Použití fondu připojení

Jak již bylo zmíněno, fond připojení vám umožňuje provádět více požadavků na připojení k vašemu serveru.

konst { Pool } = vyžadovat("pg");
konst dotenv = vyžadovat("dotenv");
dotenv.config();

konst connectDb = asynchronní () => {
Snaž se {
konst bazén = Nový Bazén({
uživatel: proces.env.PGUSER,
hostitel: proces.env.PGHOST,
databáze: proces.env.PGDATABÁZE,
Heslo: proces.env.PGHESLO,
přístav: proces.env.PGPORT,
});

čekat pool.connect()
const res = wait pool.query('VYBRAT * Z klienti')
řídicí panel.log (res)
čekat pool.end()
} úlovek (chyba) {
řídicí panel.log (chyba)
}
}

connectDb()

Výše uvedené příklady umožňují ovládat konfiguraci databáze prostřednictvím souboru .env. Můžete však také zadat tyto konfigurační hodnoty pomocí standardních proměnných prostředí. Tento přístup vám umožňuje snadno měnit konfiguraci při spuštění.

Zvažte následující kód připojení.

konst connectDb = asynchronní () => {
Snaž se {
konst bazén = Nový Bazén();
const res = wait pool.query('VYBRAT * Z klienti')
řídicí panel.log (res)
čekat pool.end()
} úlovek (chyba) {
řídicí panel.log (chyba)
}
}

V tomto programu nepředáváte objekt připojení jako argument při inicializaci fondu. Místo toho musíte zadat podrobnosti o připojení, když spustíte program takto:

PGUSER=<PGUSER> \
PGHOST=<PGHOST> \
PGPASSWORD=<PGPASSWORD> \
PGDATABASE=<PGDATABÁZE> \
PGPORT=<PGPORT> \
uzelindex.js

Připojení Node k PostgreSQL vám umožní napsat více znovupoužitelný program.

Udělejte více s PostgreSQL

Chcete-li vytvořit aplikaci, která komunikuje s databázemi, musíte ji nejprve připojit k databázi. V tomto článku jste se naučili, jak připojit Node k databázi PostgreSQL pomocí modulu node-Postgres.

Kromě PostgreSQL existují další systémy pro správu databází, jako je MySQL, které můžete ve své aplikaci použít. Databázový nástroj, který zvolíte, by měl být co nejvíce kompatibilní s vašimi datovými potřebami.