Použití psql v terminálu

Rozšíření PostgreSQL pro Visual Studio Code umožňuje otevírat psql relace, které jsou automaticky připojeny k vašim databázím a spouštět .sql soubory prostřednictvím psql. Získáte úplný přístup k nativním psql funkcím, včetně příkazů zpětného lomítka, COPY pracovních postupů a interaktivního skriptování, aniž byste opustili editor.

Rozšíření automaticky předává údaje o připojení (hostitel, port, databáze, uživatel a heslo) do psql, takže můžete začít pracovat ihned po otevření relace.

Prerequisites

Note

Pokud rozšíření nejde najít psql, zobrazí se oznámení o chybě s odkazem Na další informace na stránce pro stahování PostgreSQL. Rozšíření můžete také nasměrovat na vlastní umístění instalace pomocí pgsql.pgBinaryDirs tohoto nastavení. Viz Konfigurace binární cesty psql.

Vyberte si mezi psql a editorem dotazů

Většina pracovních postupů PostgreSQL používá oba nástroje v různých časech:

nástroj Nejlepší pro
Editor dotazů a IntelliSense IntelliSense, grafické výsledky, grafy, historie dotazů a export výsledků
psql terminál Příkazy s obráceným lomítkem, spouštění nativních skriptů, pracovní postupy \copy a řešení potíží v terminálu.

Otevření připojeného terminálu

Otevřete relaci psql, která je automaticky připojena ke konkrétní databázi. Rozšíření spustí psql s příznaky -h, -p, -d a -U a nastaví proměnnou prostředí PGPASSWORD, takže nemusíte údaje o připojení zadávat ručně.

  1. Ve stromu Připojení klikněte pravým tlačítkem myši na uzel databáze.
  2. Vyberte Připojit pomocí PSQL.

Otevře se terminál úloh Visual Studio Code s psql připojenou k vybrané databázi. Karta terminálu má název PSQL: <název> profilu.

Tento příkaz můžete spustit také z palety příkazů (Ctrl+Shift+P / Cmd+Shift+P): vyhledejte PGSQL: Připojit se pomocí PSQL.

Note

U připojení k Azure Database for PostgreSQL, která používají ověřování Microsoft Entra ID, rozšíření před spuštěním psql ověří autentizační token a předá token jako heslo. Relace zůstane aktivní bez nutnosti ručního opětovného ověření.

Spuštění souboru SQL

Spusťte soubor .sql prostřednictvím psql s využitím připojení z aktivního editoru. Výstup se zobrazí v Visual Studio Code terminálu úloh.

  1. .sql Otevřete soubor v editoru.
  2. Pokud ještě není připojený, připojte editor k databázi.
  3. Klikněte pravým tlačítkem v editoru a vyberte Spustit soubor pomocí PSQL.

Rozšíření uloží soubor a pak spustí psql -f <filepath> proti aktivnímu připojení. Otevře se terminál úlohy, aby zobrazil výstup provádění. Pracovní adresář je nastaven na složku obsahující soubor, takže se relativní cesty ve vašem skriptu správně vyhodnocují.

Important

Před spuštěním soubor uložte. Pokud neuložené změny nelze uložit, zobrazí se v rozšíření zpráva s informací, že soubor musí být uložen před spuštěním příkazů PSQL. Operace je zrušena.

Nastavte cestu k binárnímu souboru psql

Rozšíření hledá psql ve třech umístěních v tomto pořadí:

  1. Sady binárních souborů: Klientské nástroje PostgreSQL, které se dodávají s rozšířením uspořádaným podle verze.
  2. System PATH: adresáře uvedené v proměnné prostředí vašeho operačního PATH systému.
  3. Vlastní adresáře: cesty, které přidáte do pgsql.pgBinaryDirs nastavení.

Když se najde více verzí psql , rozšíření vybere verzi, která nejlépe odpovídá verzi PostgreSQL vašeho serveru. Pokud žádná přesná shoda neexistuje, použije nejbližší dostupnou verzi.

Přidání vlastního binárního adresáře:

  1. Otevřete nastavení (Ctrl+, / Cmd+,).
  2. Vyhledejte pgsql.pgBinaryDirs.
  3. Vyberte Přidat položku a zadejte absolutní cestu k adresáři, který obsahuje psql binární soubor.
  4. Restartujte Visual Studio Code, aby se změna projevila.

Tip

V macOS s Homebrew, typická cesta je /opt/homebrew/opt/postgresql@17/bin. Na Windows je to obvykle C:\Program Files\PostgreSQL\17\bin.

Jak rozšíření spouští psql

Když vyberete Připojit pomocí PSQL nebo Spustit soubor pomocí PSQL, rozšíření sestaví psql vyvolání následujícím způsobem:

Podrobnosti o připojení Jak to rozšíření předá
Hostitel (-h) Ze serverové adresy profilu připojení.
Port (-p) Z portu profilu připojení. Výchozí hodnota je 5432.
Databáze (-d) Vybraný databázový uzel nebo výchozí databáze profilu připojení
Uživatel (-U) Uživatelské jméno profilu připojení; pro Microsoft Entra ID uživatelské jméno nebo e-mailovou adresu Entra
Heslo Nastaveno prostřednictvím proměnné prostředí PGPASSWORD; pro Microsoft Entra ID obnovený přístupový token.
Kódování klienta Nastavuje se pomocí proměnné prostředí PGCLIENTENCODING (výchozí hodnota je UTF8)

Rozšíření spouští psql jako úlohu ve Visual Studio Code, která se otevře v panelu Terminál. Terminál úloh zůstane po psql ukončení otevřený, abyste mohli zkontrolovat výstup.

Případy použití

Terminál psql je užitečný v případě, že potřebujete funkce nad rámec integrovaného editoru dotazů:

  • Interaktivní relace SQL: Spusťte ad hoc příkazy a zkontrolujte výsledky ve známém psql prostředí.
  • Hromadný import/export dat: Použijte příkazy \copy nebo COPY pro vysoce výkonné načítání dat.
  • Úlohy správy: Správa rolí, oprávnění a konfigurace serveru s úplným psql přístupem
  • Testování skriptů: Před nasazením ověřte .sql skripty v nativním psql prostředí.
  • Příkazy s obráceným lomítkem: Použijte \dt, \d+, \timing, \x a další příkazy, které nejsou dostupné v grafickém editoru dotazů.

Běžné psql úkoly

Kontrola databázových objektů

Pro rychlou kontrolu schématu použijte příkazy s obráceným lomítkem psql:

\dt
\d+ public.orders
\dn

Tyto příkazy uvádějí tabulky, zobrazují podrobné definice objektů a schémata seznamů.

Zapněte časování a rozšířený výstup

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

\timing zobrazí dobu trvání dotazu po každém příkazu. Rozšířený výstup (\x) usnadňuje čtení širokých řádků.

Načtěte nebo exportujte data pomocí \copy

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

Pomocí \copy můžete provádět hromadný import nebo export v terminálu se zachováním kontextu připojení spravovaného rozšířením.

Odstraňování potíží

psql nenalezena

Pokud se v rozšíření zobrazí chyba Nepodařilo se najít spustitelný soubor psql, zkuste tento postup:

  1. Na stránce pro stahování PostgreSQL nainstalujte klientské nástroje PostgreSQL pro váš operační systém.
  2. Ověřte, že psql je k dispozici spuštěním psql --version v systémovém terminálu.
  3. Pokud psql je nainstalovaný v nestandardním umístění, přidejte do pgsql.pgBinaryDirs nastavení adresář. Viz Konfigurace binární cesty psql.
  4. Restartujte Visual Studio Code.

Otevření složky pracovního prostoru

Rozšíření vyžaduje otevřenou složku pracovního prostoru ke spuštění psql. Pokud se zobrazí zpráva, že musí být otevřená složka pracovního prostoru, otevřete složku pomocí Soubor>Otevřít složku a pak to zkuste znovu.

Selhání ověřování nebo připojení

Pokud psql se otevře, ale připojení selže:

  • Ověřte správnost hostitele, portu a databáze ve vašem profilu připojení. Viz Připojení a identita.
  • V případě ověřování Microsoft Entra ID ověřte, že je váš účet stále přihlášený. Rozšíření aktualizuje tokeny automaticky, ale relace s vypršenou platností můžou vyžadovat opětovné ověření.
  • Pokud používáte tunel SSL nebo SSH, před opětovným otevřením psqlznovu otestujte stejné připojení z dialogového okna připojení .

Změny souborů se nespustí

Když spustíte soubor se souborem Spustit pomocí PSQL, přípona soubor před spuštěním uloží na disk. Pokud se uložení nezdaří, rozšíření operaci zruší. Před kontrolou výstupu soubor úspěšně uložte.