この種の情報を取得する方法を見つける良い方法は、psql
のヘルプを確認することです。 この情報を表示するコマンドを見つけます。
この場合、それはdg+
です。 指図。
コマンドがわかれば、psql
の内部SQLクエリの出力を有効にできます。 その情報を取得する方法を見つけるためのツール。これは、psql
を開始することによって行われます。 -E
を使用する パラメータ。
これを行うと、次のように表示されます:
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
いくつかだけが必要かどうかは、質問からは明らかではありません。 コメントを表示するメソッド、次にdg+
おそらく十分です。それ以外の場合は、psql
で使用されるSQLクエリを調整できます 必要に応じて、例:
SELECT pg_catalog.shobj_description(r.oid, 'pg_authid') AS description
FROM pg_catalog.pg_roles r
where r.rolname = 'someone';
注:\duと\dgはpsqlの同じコマンドです。どちらも