Formátovač PostgreSQL
Formátujte dotazy a skripty PostgreSQL podľa pravidiel Postgresu pre telá funkcií ohraničené znakom dolára, escape reťazce E'', identifikátory v dvojitých úvodzovkách, pretypovania :: a operátory JSON, ako sú ->> a @>. Klauzuly ako RETURNING, ON CONFLICT a DO UPDATE SET sa uvádzajú na samostatných riadkoch a neuzavreté reťazce, komentáre či zátvorky sa hlásia spolu s číslom riadka a stĺpca. Určené pre vývojárov, ktorí čítajú migračné skripty a dotazy.
Často kladené otázky
Ktorú syntax PostgreSQL dokáže rozpoznať?
Rozpoznávajú sa štandardné reťazce so zdvojenými úvodzovkami, reťazce E'' s escape sekvenciami so spätnou lomkou, reťazce U&'' Unicode, bitové reťazce B'' a X'', identifikátory v dvojitých úvodzovkách a parametre $1. Spracúvajú sa aj reťazce ohraničené znakom dolára, napríklad $$...$$ alebo $body$...$body$.
Čo sa stane s telami funkcií v úvodzovkách s dolárovým ohraničením?
Telo ohraničené znakom dolára zostáva presne také, ako bolo napísané, pretože pre PostgreSQL ide o reťazec. Okolitý príkaz CREATE FUNCTION sa naformátuje, samotné telo sa nemení.
Zostávajú pretypovania a operátory nezmenené?
Áno. Pretypovania, napríklad value::integer, zostávajú pohromade a operátory ako ->, ->>, #>, #>>, @>, <@, ?|, ?&, @@ a operátory regulárnych výrazov ~ a ~* vrátane ich negovaných foriem sa nikdy nerozdelia. V PostgreSQL je # operátor, nie komentár.
Ktoré klauzuly PostgreSQL majú vlastný riadok?
RETURNING, ON CONFLICT, DO UPDATE SET, FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE a FOR KEY SHARE zostávajú pohromade ako klauzuly. Aj bežné klauzuly SELECT, FROM, WHERE, GROUP BY, ORDER BY, LIMIT a OFFSET začínajú na vlastných riadkoch.
Zachovajú sa komentáre?
Áno. Jednoriadkové aj blokové komentáre zostávajú na svojom mieste a vnorené blokové komentáre, ktoré PostgreSQL povoľuje, sa správne načítajú. Viacriadkové blokové komentáre sa znovu odsadia podľa ich novej pozície.
Podporuje MERGE?
Áno. Vetvy WHEN MATCHED a WHEN NOT MATCHED začínajú na nových riadkoch, takže príkazy MERGE z verzie PostgreSQL 15 a novších zostávajú prehľadné.
Mení veľkosť písmen v kľúčových slovách?
Nie. Kľúčové slová a identifikátory si zachovajú veľkosť písmen, ktorú ste zadali. Identifikátory v úvodzovkách rozlišujú veľkosť písmen v PostgreSQL a nikdy sa neupravujú.
Ktoré chyby sa zisťujú?
Neuzavreté reťazce, identifikátory v úvodzovkách, reťazce v dolárových úvodzovkách a blokové komentáre, ako aj nevyvážené zátvorky, sa nahlásia spolu s riadkom a stĺpcom. Nástroj nekontroluje úplnú gramatiku PostgreSQL ani vašu schému.
Aký veľký môže byť vstup?
Až 1 MB na požiadavku a 128 KB na príkaz. Migračné súbory s mnohými príkazmi sa formátujú po jednom a oddeľujú prázdnymi riadkami.
Môžem si vybrať odsadenie?
Áno. Použite 2 alebo 4 medzery alebo tabulátory. Vaše SQL sa spracúva iba v pamäti a nikdy sa neukladá.