Za prvé, váš dotaz na komentáře k tabulce lze zjednodušit pomocí přetypování na příslušný typ identifikátoru objektu :
SELECT description
FROM pg_description
WHERE objoid = 'myschema.mytbl'::regclass;
Část schématu je volitelná. Pokud jej vynecháte, vaše aktuální search_path
rozhoduje o viditelnosti jakékoli tabulky s názvem mytbl
.
Ještě lépe , existují vyhrazené funkce v PostgreSQL pro zjednodušení a kanonizaci těchto dotazů. Manuál:
obj_description(
object_oid
,catalog_name
)
... získat komentář pro objekt databáze
shobj_description(
object_oid
,catalog_name
)
... získat komentář pro sdílený databázový objekt
Popis tabulky:
SELECT obj_description('myschema.mytbl'::regclass, 'pg_class');
Popis databáze:
SELECT pg_catalog.shobj_description(d.oid, 'pg_database') AS "Description"
FROM pg_catalog.pg_database d
WHERE datname = 'mydb';
Jak se o tom dozvíte?
Inu, čtení skvělého manuálu je poučné. :)
V tomto případě však existuje přímější cesta:většina psql
meta příkazy jsou implementovány pomocí prostého SQL. Zahajte relaci pomocí psql -E
, vidět kouzlo za závěsy. Manuál:
-E
--echo-hidden
Echo skutečné dotazy generované
\d
a další příkazy zpětného lomítka. Můžete to použít ke studiu vnitřních operací psql. To je ekvivalentní nastavení proměnnéECHO_HIDDEN
doon
.