A psql használata a terminálban

Az Visual Studio Code PostgreSQL-bővítménye lehetővé teszi az adatbázisokhoz automatikusan csatlakozó munkamenetek megnyitását psql és a fájlok futtatását .sqlpsql. A szerkesztő elhagyása nélkül teljes hozzáférést kaphat a natív psql funkciókhoz, beleértve a fordított perjeles parancsokat, COPY a munkafolyamatokat és az interaktív szkripteket.

A bővítmény automatikusan átadja a kapcsolat adatait (gazdagép, port, adatbázis, felhasználó és jelszó), psql így a munkamenet megnyitása után azonnal megkezdheti a munkát.

Prerequisites

Megjegyzés:

Ha a bővítmény nem találhatópsql, hibaüzenet jelenik meg a PostgreSQL letöltési oldalára mutató További információ hivatkozással. A bővítményt egyéni telepítési helyre is irányíthatja a pgsql.pgBinaryDirs beállítással. Lásd a psql bináris elérési útjának konfigurálását.

Válasszon a psql és a lekérdezésszerkesztő között

A Legtöbb PostgreSQL-munkafolyamat mindkét eszközt különböző időpontokban használja:

Eszköz Legjobb a számára
Lekérdezésszerkesztő és IntelliSense IntelliSense, grafikus eredmények, diagramok, lekérdezési előzmények és az eredmények exportálása.
psql Terminál Visszaperjeles parancsok, natív szkriptek végrehajtása, \copy-munkafolyamatok és terminálalapú hibaelhárítás.

Csatlakoztatott terminál megnyitása

Nyisson meg egy munkamenetet psql , amely automatikusan csatlakozik egy adott adatbázishoz. A bővítmény elindítja a(z) psql elemet a(z) -h, -p, -d és -U jelzőkkel, és beállítja a(z) PGPASSWORD környezeti változót, így nem kell manuálisan megadnia a kapcsolati adatokat.

  1. A Kapcsolatok fában kattintson a jobb gombbal egy adatbáziscsomópontra.
  2. Válassza a Csatlakozás a PSQL-vel lehetőséget.

Megnyílik egy Visual Studio Code feladatterminál a kijelölt adatbázishoz való csatlakozássalpsql. A terminállap neve PSQL: <profilnév>.

Ezt a parancsot a Parancskatalógusból is futtathatja:Ctrl+Shift+P / Cmd+Shift+P keresse meg a PGSQL-t: Csatlakozás a PSQL-sel.

Megjegyzés:

Azoknál az Azure Database for PostgreSQL-kapcsolatoknál, amelyek Microsoft Entra ID-hitelesítést használnak, a bővítmény a psql elindítása előtt ellenőrzi a hitelesítési tokent, majd jelszóként továbbítja azt. A munkamenet manuális újrahitelesítés nélkül is csatlakoztatva marad.

SQL-fájl futtatása

Egy .sql fájl futtatása psql használatával, az aktív szerkesztő kapcsolatát használva. A kimenet egy Visual Studio Code feladat termináljában jelenik meg.

  1. Nyisson meg egy .sql fájlt a szerkesztőben.
  2. Csatlakoztassa a szerkesztőt egy adatbázishoz, ha még nincs csatlakoztatva.
  3. Kattintson a jobb gombbal a szerkesztőre, és válassza a Fájl futtatása a PSQL-vel lehetőséget.

A bővítmény menti a fájlt, majd lefuttatja a psql -f <filepath> parancsot az aktív kapcsolaton. Megnyílik egy feladatterminál a végrehajtási kimenet megjelenítéséhez. A munkakönyvtár a fájlt tartalmazó mappára van állítva, így a szkript relatív elérési útjai megfelelően oldódnak fel.

Important

Mentse a fájlt a végrehajtás előtt. Ha a nem mentett módosításokat nem lehet menteni, a bővítmény egy üzenetet jelenít meg, amely szerint a fájlt menteni kell a PSQL-parancsok végrehajtása előtt. A művelet megszakad.

A psql bináris elérési útjának konfigurálása

A bővítmény a(z) psql elemet három helyen keresi, ebben a sorrendben:

  1. Csomagban lévő bináris fájlok: A bővítményt tartalmazó PostgreSQL-ügyféleszközök, verzió szerint rendszerezve.
  2. System PATH: az operációs rendszer környezeti változójában PATH felsorolt könyvtárak.
  3. Egyéni könyvtárak: a pgsql.pgBinaryDirs beállításhoz hozzáadott elérési utak.

Ha több verzió psql is megtalálható, a bővítmény kiválasztja a kiszolgáló PostgreSQL-verziójának leginkább megfelelő verziót. Ha nincs pontos egyezés, a legközelebbi elérhető verziót használja.

Egyéni bináris könyvtár hozzáadása:

  1. Nyissa meg a Beállítások () lehetőségetCtrl+, / Cmd+,.
  2. Keressen a pgsql.pgBinaryDirs kifejezésre.
  3. Válassza az Elem hozzáadása lehetőséget, és adja meg a bináris fájlt tartalmazó psql könyvtár abszolút elérési útját.
  4. Indítsa újra Visual Studio Code a módosítás érvénybe lépéséhez.

Tip

A Homebrew-val rendelkező macOS rendszeren a tipikus elérési út a /opt/homebrew/opt/postgresql@17/bin. Windowson általában ez: C:\Program Files\PostgreSQL\17\bin.

Hogyan indítja el a bővítmény a psql-t?

Ha a Csatlakozás PSQL-vel vagy A PSQL-fájl futtatása lehetőséget választja, a bővítmény a következőképpen összeállítja a psql meghívást:

Kapcsolat részletei Hogyan adja át ezt a bővítmény
Gazdagép (-h) A kapcsolódási profil szervercíméből.
Port (-p) A kapcsolatprofil portjáról. Az alapértelmezett érték a 5432.
Adatbázis (-d) A kijelölt adatbáziscsomópont vagy a kapcsolati profil alapértelmezett adatbázisa
Felhasználó (-U) A kapcsolati profil felhasználóneve; Microsoft Entra ID esetén az Entra felhasználóneve vagy e-mail-címe
Jelszó Beállítás a PGPASSWORD környezeti változón keresztül; Microsoft Entra ID esetében a frissített hozzáférési jogkivonat
Ügyfélkódolás Beállítás a PGCLIENTENCODING környezeti változón keresztül (alapértelmezés szerint UTF8)

A bővítmény Visual Studio Code feladatként futpsql, amely a Terminál panelen nyílik meg. A feladathoz tartozó terminál psql kilépése után is nyitva marad, így áttekinthesse a kimenetet.

Használati esetek

A psql terminál akkor hasznos, ha a beépített lekérdezésszerkesztőn túli képességekre van szüksége:

  • Interaktív SQL-munkamenetek: Alkalmi parancsok futtatása és az eredmények vizsgálata ismerős psql környezetben.
  • Tömeges adatimport/-export: Nagy teljesítményű adatbetöltéshez használja a \copy vagy COPY parancsokat.
  • Felügyeleti feladatok: Szerepkörök, engedélyek és kiszolgálókonfiguráció kezelése teljes psql hozzáféréssel.
  • Szkripttesztelés: A szkriptek natív .sql ellenőrzése psql az üzembe helyezés előtt.
  • Visszaperjeles parancsok: Használja a \dt, \d+, \timing, \x és az egyéb, a grafikus lekérdezésszerkesztőben nem elérhető parancsokat.

Gyakori psql feladatok

Adatbázis-objektumok vizsgálata

Használjon psql fordított perjel parancsokat a gyors sémavizsgálathoz:

\dt
\d+ public.orders
\dn

Ezek a parancsok felsorolják a táblákat, részletes objektumdefiníciókat és listasémákat mutatnak.

Kapcsolja be az időzítést és a bővített kimenetet

\timing on
\x on
SELECT * FROM public.orders LIMIT 5;

\timing a lekérdezések időtartamát jeleníti meg az egyes utasítások után. A kibontott kimenet (\x) megkönnyíti a széles sorok olvasását.

Adatok betöltése vagy exportálása a \copy

\copy public.customers FROM '/Users/example/customers.csv' WITH (FORMAT csv, HEADER true)

Terminálorientált tömeges importáláshoz vagy exportáláshoz használható \copy a bővítmény által felügyelt kapcsolati környezet újrafelhasználása közben.

Troubleshoot

psql nem található

Ha a bővítmény a "Nem találja a végrehajtható psql-t" hibaüzenet jelenik meg, próbálkozzon az alábbi lépésekkel:

  1. Telepítse a PostgreSQL-ügyféleszközöket az operációs rendszerhez a PostgreSQL letöltési oldaláról.
  2. Ellenőrizze, hogy elérhető-e psql egy rendszerterminálban való futtatással psql --version .
  3. Ha psql nem megfelelő helyre van telepítve, adja hozzá a könyvtárat a pgsql.pgBinaryDirs beállításhoz. Lásd a psql bináris elérési útjának konfigurálását.
  4. Indítsa újra a Visual Studio Code-ot.

Munkaterület mappa megnyitása

A bővítmény indításához psqlegy megnyitott munkaterületi mappa szükséges. Ha egy üzenet szerint meg kell nyitni egy munkaterületmappát, nyisson meg egy mappát a Fájlmegnyitás>mappával, majd próbálkozzon újra.

Hitelesítés vagy csatlakozási hibák

Ha psql megnyílik, de a kapcsolat meghiúsul:

  • Ellenőrizze, hogy a gazdagép, a port és az adatbázis helyes-e a kapcsolatprofilban. Lásd: Kapcsolatok és identitás.
  • A Microsoft Entra ID hitelesítéshez ellenőrizze, hogy a fiókja még be van-e jelentkezve. A bővítmény automatikusan frissíti a tokeneket, de a lejárt munkamenetek újbóli hitelesítést igényelhetnek.
  • Ha SSL-t vagy SSH-alagutat használ, a kapcsolati párbeszédpanelen tesztelje újra ugyanezt a kapcsolatot, mielőtt újra megnyitná a psql elemet.

A fájlmódosítások nem futnak

Amikor futtat egy fájlt a Run file with PSQL használatával, a bővítmény a fájlt a végrehajtás előtt lemezre menti. Ha a mentés sikertelen, a bővítmény megszakítja a műveletet. A kimenet áttekintése előtt mentse a fájlt sikeresen.