Obsah
PSQL je příkazový řádek, konzola, která je ve výchozím nastavení zabalena PostgreSQL, to nám umožňuje spouštět dotazy a dokonce nám to umožňuje používat jej jako nástroj k provádění automatizovaných skriptů, importu a exportu dat, obnovení, administraci databáze a dokonce i jako základní generátor sestav.Chcete -li použít interaktivní konzolu PSQL Nejprve musíme vědět, jaké příkazy můžeme v tomto režimu použít, abychom získali přístup k obecné nápovědě, kterou máme, pomocí následující instrukce:
psql \?
Díky tomu zobrazíme seznam toho, co můžeme použít, navíc pokud máme nějaké dotazy s příkazem SQL, můžeme tuto pomoc použít k získání konkrétních informací o uvedeném příkazu, například:
\ h VYTVOŘIT TABULKU
Tím bychom získali výsledek, jako je ten, který uvidíme na dalším obrázku.
Neinteraktivní konzola znamená, že požádáme příkazový řádek o spuštění souboru skriptu, který obsahuje kombinaci příkazů SQL s příkazy PSQLMůžeme dokonce alternativně předávat příkazy SQL ve volání provedení v neinteraktivní konzole. To nám umožňuje usnadnit vytváření automatizovaných úkolů, protože pokyny, které chceme provést, můžeme uložit do souboru a poté naplánovat jejich spuštění, když je potřebujeme.
Ke spuštění souboru jednoduše použijeme parametr -f následujícím způsobem
psql -f some_script_file
Pokud příkazy v souboru nemáme, můžeme je předat přímo do konzoly následujícím způsobem:
psql -d postgresql_book -c "DROP TABLE IF EXISTS dross; CREATE SCHEMA staging;"
Jak jsme viděli, můžeme zahrnout více příkazů, pokud je oddělíme středníkem.
Podívejme se, jak vytvořit soubor s interaktivními příkazy uvnitř:
\ a \ t \ g create_script.sql SELECT 'CREATE TABLE staging.factfinder_import (geo_id varchar (255), geo_id2 varchar (255), geo_display varchar (255),' || array_to_string (array_agg ('s' || lpad (i :: text, 2, '0') || 'varchar (255), s' || lpad (i :: text, 2, '0') || '_perc varchar (255)'), ',') || ');' FROM generate_series (1,51) As i; \ o \ i create_script.sql
Používáme \ t odstranit záhlaví a \ a k odstranění generovaných prvků přerušení, pak pomocí \ g určíme, že budeme generovat soubor pro výstup toho, co generuje náš dotaz. Pak s funkcí lpad umožní našim sloupcům mít strukturu s01, s01_perc, s02, s02_perc. Voláme příkaz \ o, abychom zastavili skládku v souboru, a poté pro efektivní generování souboru použijeme interaktivní příkaz \ i.
Nakonec můžeme spustit náš soubor příkazem:
psql -f build_stage.psql -d postgresql_book
Díky tomu jsme díky nástrojům příkazového řádku konzoly nebo PSQL vybudovali naše funkce poměrně jednoduchým způsobem. S tímto dokončujeme náš tutoriál, víme již něco více o konzole a různých prostředích, která zpracovává, například interaktivní a neinteraktivní.