### Dotazovací nástroj

Dotazovací nástroj vám umožňuje provádět libovolné příkazy SQL.

Horní část dotazovacího nástroje obsahuje Editor SQL, ve kterém píšete své příkazy. Můžete také dotaz načíst ze souboru a do souboru ho i uložit. Při ukládání se podle přípony určí kódování. Pokud je *.sql, použije se 8bitová lokální sada, pokud je *.usql použije se UTF-8, které zahrnuje všechny znaky z celého svět podle standardu Unicode. Pokud zvolíte *.* použije se nastavení volby Číst a zapisovat soubory v Unicode UTF-8.

Editační okno také obsahuje automatické dokončování kódu, které vám pomůže psát dotazy. Stačí začít psát dotaz a stisknout Control+Mezerník. Zobrazí se seznam názvů, které můžete vložit. Např. napište SELECT * FROM, zmáčkněte dohromady Control a mezerník a nabídne se vám seznam tabulek. Systém automatického dokončování je založený na kódu z psql, interpretru příkazové řádky PostgreSQL a proto vám nabídne ty stejné možnosti jako v psql. Volitelně můžete povolit aktivaci automatického dokončování klávesou Tab v dialogu Volby.

Editor nabízí několik funkcí, které vám pomůžou s formátováním kódu:

- Funkce automatického odsazování automaticky odsazuje text na stejnou úroveň jako předchozí řádek.
- Odsazení bloku textu vybráním dvou nebo více řádků a stiskem klávesy Tab.
- Přiražení bloku textu stiskem Shift+Tab, použije se šířka odsazení uvedená v nastavení.
- Zakomentování SQL vybráním textu a stiskem Control+K.
- Odkomentování SQL vybráním textu, který začíná komentářem a stiskem Control+Shift+K.
- Změna vybraného textu na velká písmena stiskem Control+Shift+U.
- Změna vybraného textu na malá písmena stiskem Control+U.

Pokud upřednostňujete sestavení dotazu v grafické podobě, můžete použít Grafický tvůrce dotazů, který vám následně SQL vygeneruje.

Dotaz spustíte pomocí „Provést“ z menu „Dotaz“ nebo tlačítkem „Provést dotaz“ na panelu nástrojů nebo stiskem funkční klávesy F5. Celý obsah Editoru SQL se pošle databázovému serveru, který jej zpracuje. Pokud chcete odeslat jen část zadaného textu, musíte jej vybrat.

„Vyložit“ v menu „Dotaz“ nebo klávesa F7 spustí příkaz EXPLAIN. Databázový server provede analýzu dotazu, který jste odeslali a vrátí výsledky.

Výsledek se zobrazí v textové podobě na kartě „Datový výstup“ a graficky vizualizovaný na kartě „Výklad“. Díky tomu můžete zjistit, jak je dotaz analyzován, optimalizován a prováděn. Můžete upravit stupeň zkoumání změnou „Volby výkladu“ v menu „Dotaz“. Upozorňujeme, že při volbě „Slovně“ (EXPLAIN VERBOSE) nelze zobrazit grafickou podobu.

V případě, že provádění dotazu, který jste odeslali pomocí „Provést“ nebo „Vyložit“, trvá déle, než jste čekali, můžete ho chtít přerušit. V tom případě zvolte „Zrušit“ z menu „Dotaz“ nebo na panelu nástrojů a nebo stiskněte Alt+Break.

Volbou „Spustit pgScript“ z menu „Dotaz“ namísto „Provést“, případně stejnojmenným tlačítkem na panelu nástrojů nebo stiskem funkční klávesy F6 můžete spouštět skripty pgScript. Celý obsah okna „Editor SQL“ se odešle interpretu pgScriptu, který jej zpracuje. Skripty pgScript se skládají z běžných příkazů SQL, ale navíc přidávají:

- Řízení běhu skriptu (struktury IF a WHILE)
- Lokální proměnné (SET @PROMENNA = 5)
- Generátory náhodných dat (INTEGER(10, 20) nebo REFERENCE(tabulka, sloupec))

Pokud chcete více informací o jazyku pgScript, podívejte se prosím na příručku skriptovacího jazyka pgScript.

Pokud potřebujete nápovědu k příkazu SQL, který píšete, můžete jej označit a zvolit „Nápověda k SQL“ v menu „Nápověda“ nebo na panelu nástrojů nebo jednoduše stisknout F1. pgAdmin se pro vás pokusí najít patřičné informace v dokumentaci k PostgreSQL.

Výsledek dotazu zpracovaného databázovým server se zobrazí ve spodní části dotazovacího nástroje. Pokud jste poslali řadu více příkazů, zobrazený výsledek na kartě „Datový výstup“ náleží poslednímu příkazu SQL z této řady. Výstupy všech předchozích příkazů se zahodí.

Data z karty „Datový výstup“ můžete uložit do souboru pomocí dialogu Export.

Informace o všech právě prováděných příkazech směřují na kartu „Zprávy“. Na kartě „Historie“ se pamatují všechny provedené dotazy a jejich výsledky, pokud nepoužijete „Smazat historii“ z menu „Dotaz“, čímž se celá karta s historií vymaže. Pokud si historii chcete uchovat pro pozdější zkoumání, můžete si obsah karty „Historie“ uložit do souboru pomocí „Uložit historii“ v menu „Dotaz“.

Na stavovém řádku je uvedené, jak dlouho trvalo dokončení posledního dotazu. Pokud dotaz vrátil nějaká data, zahrnuje tento čas nejen dobu zpracování na serveru ale i dobu, kterou trval přenos dat ze serveru na kartu „Datový výstup“.

Ve výběrovém seznamu na panelu nástrojů můžete rychle přepínat databázi ke které jste připojení na jinou, aniž byste museli spouštět další instanci dotazovacího nástroje. Ze začátku je nabízena jen jedna databáze, ale volbou <nové připojení> na konci seznamu můžete přidávat další.

V dialogu Volby můžete určit počet řádků, které se mají získávat z výsledků dotazu. Výchozí hodnota je 100. Pokud je vracený počet větší, objeví se zpráva s dotazem, co dělat, aby se zamezilo vrácení neočekávaně velkého množství dat. Můžete nechat vrátit jen několik prvních řádků, jak je nastaveno v limitu nebo vrátit kompletně všechny bez ohledu na limit a nebo dotaz zrušit a výsledky nevracet.

Jestliže některé dotazy provádíte často, můžete si je přidat do menu „Oblíbené“. Když je v menu potom zvolíte, automaticky se vám vloží do editačního okna. S pomocí „Spravovat oblíbené...“ si můžete oblíbené položky organizovat. Jinou možností je ukládání vybrané části kódu jako Makra.

Součástí dotazovacího nástroje jsou mocné funkce „Hledat a nahradit“. K běžným volbám většiny takovýchto nástrojů přidávají režim hledání podle regulárních výrazů, což vám dává rozsáhlé možnosti pro operace hledání a nahrazování. Pokud není pgAdmin přeložený s nějakou nestandardní verzí wxWidgets, používá knihovnu regulárních výrazů od Henryho Spencera založenou na specifikaci 1003.2 s některými (ne úplně všemi) rozšířeními podle Perl5.

Další podrobné informace o syntaxi regulárních výrazů najdeted v dokumentaci wxWidgets.