sql >> Database >  >> RDS >> PostgreSQL

Hoe u het commentaar van een rol uit de PostgreSQL-database haalt

Een goede manier om erachter te komen hoe u dit soort informatie kunt ophalen, is door de help te raadplegen voor psql en zoek de opdracht die deze informatie zou weergeven.

In dit geval is het de dg+ opdracht.

Zodra u de opdracht kent, kunt u het afdrukken van de interne SQL-query's van de psql . inschakelen hulpmiddel om erachter te komen hoe het die informatie ophaalt. Dit doe je door psql . te starten met behulp van de -E parameter.

Als je dat doet, zie je:

psql (9.4.5)
Type "help" for help.

postgres=# \dg+
********* QUERY **********
SELECT r.rolname, r.rolsuper, r.rolinherit,
  r.rolcreaterole, r.rolcreatedb, r.rolcanlogin,
  r.rolconnlimit, r.rolvaliduntil,
  ARRAY(SELECT b.rolname
        FROM pg_catalog.pg_auth_members m
        JOIN pg_catalog.pg_roles b ON (m.roleid = b.oid)
        WHERE m.member = r.oid) as memberof
, pg_catalog.shobj_description(r.oid, 'pg_authid') AS description
, r.rolreplication
FROM pg_catalog.pg_roles r
ORDER BY 1;
**************************

                                List of roles
   Role name   |            Attributes             | Member of | Description
---------------+-----------------------------------+-----------+-----------------------
 someone       |                                   | {}        | THIS IS A ROLE COMMENT

Het is niet duidelijk uit je vraag of je gewoon wat . wilt methode om de opmerking te zien, dan dg+ is waarschijnlijk genoeg. Anders kunt u de SQL-query aanpassen die wordt gebruikt door psql aan uw behoeften, bijv.:

SELECT pg_catalog.shobj_description(r.oid, 'pg_authid') AS description
FROM pg_catalog.pg_roles r
where r.rolname = 'someone';

Opmerking:\du en \dg zijn hetzelfde commando in psql. Beide worden om historische redenen onderhouden .



  1. JSON_REPLACE() – Vervang waarden in een JSON-document in MySQL

  2. Basisversiebeheer voor MySQL-tabel

  3. 3 manieren om alle triggers voor een bepaalde tabel in PostgreSQL op te sommen

  4. Hoe Blob-gegevens in MYSQL naar Android ImageView te converteren