sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur hämtar jag kommentaren från en PostgreSQL-databas?

För det första kan din fråga efter tabellkommentarer förenklas med hjälp av en cast till lämplig objektidentifieringstyp :

SELECT description
FROM   pg_description
WHERE  objoid = 'myschema.mytbl'::regclass;

Schemadelen är valfri. Om du utelämnar det, din nuvarande search_path bestämmer synligheten för alla tabeller som heter mytbl .

Ännu bättre , det finns dedikerade funktioner i PostgreSQL för att förenkla och kanonisera dessa frågor. Manualen:

obj_description( object_oid , catalog_name ) ... få kommentar för ett databasobjekt

shobj_description( object_oid , catalog_name ) ... få kommentar för ett delat databasobjekt

Beskrivning för tabell:

SELECT obj_description('myschema.mytbl'::regclass, 'pg_class');

Beskrivning för databas:

SELECT pg_catalog.shobj_description(d.oid, 'pg_database') AS "Description"
FROM   pg_catalog.pg_database d
WHERE  datname = 'mydb';

Hur får du reda på det?

Tja, att läsa den utmärkta manualen är upplysande. :)
Men det finns en mer direkt väg i det här fallet:mest psql metakommandon implementeras med vanlig SQL. Starta en session med psql -E , för att se magin bakom gardinerna. Manualen:

-E
--echo-hidden

Eka de faktiska frågorna som genereras av \d och andra omvänt snedstreck kommandon. Du kan använda detta för att studera psqls interna verksamhet. Detta motsvarar att ställa in variabeln ECHO_HIDDEN till on .



  1. Använd @@IDENTITY för att returnera det senast införda identitetsvärdet i SQL Server

  2. Hur kan jag lösa inkompatibla med sql_mode=only_full_group_by i laravel vältalig?

  3. Hur man avrundar (UPP/NER) i SQL Server – 5 användbara tips

  4. Hur man lägger till en titel till en formulärrubrik i Microsoft Access