Po pierwsze, zapytanie dotyczące komentarzy do tabeli można uprościć za pomocą rzutowania na odpowiedni typ identyfikatora obiektu :
SELECT description
FROM pg_description
WHERE objoid = 'myschema.mytbl'::regclass;
Część schematu jest opcjonalna. Jeśli go pominiesz, Twoja obecna search_path decyduje o widoczności dowolnej tabeli o nazwie mytbl .
Jeszcze lepiej , istnieją funkcje dedykowane w PostgreSQL w celu uproszczenia i kanonizacji tych zapytań. Instrukcja:
obj_description( object_oid , catalog_name ) ... pobierz komentarz do obiektu bazy danych
shobj_description( object_oid , catalog_name ) ... pobierz komentarz do współdzielonego obiektu bazy danych
Opis tabeli:
SELECT obj_description('myschema.mytbl'::regclass, 'pg_class');
Opis bazy danych:
SELECT pg_catalog.shobj_description(d.oid, 'pg_database') AS "Description"
FROM pg_catalog.pg_database d
WHERE datname = 'mydb';
Jak się o tym dowiadujesz?
Cóż, przeczytanie doskonałej instrukcji jest pouczające. :)
Ale w tym przypadku jest bardziej bezpośrednia trasa:większość psql polecenia meta są zaimplementowane za pomocą zwykłego SQL. Rozpocznij sesję za pomocą psql -E , aby zobaczyć magię za zasłonami. Instrukcja:
-E --echo-hidden
Echo rzeczywistych zapytań wygenerowanych przez \d i inne polecenia odwróconego ukośnika. Możesz użyć tego do zbadania wewnętrznych operacji psql. Jest to równoważne ustawieniu zmiennej ECHO_HIDDEN do on .