通过查询在PostgreSQL中获取角色注释

问题描述 投票:0回答:2

Postgresql允许向角色和用户添加注释。例如,我使用此SQL命令为角色“myuser”添加了注释:

COMMENT ON ROLE myuser IS 'User comment...';

我的问题是:如果我想使用SQL命令让所有用户及其各自的评论 - 我将如何做到这一点?什么是适当的查询?

postgresql
2个回答
0
投票

你需要使用内置函数shobj_description(object_oid, catalog_name)

SELECT *, shobj_description(oid, 'pg_authid') AS comment
  FROM pg_roles;

0
投票
SELECT u.usesysid, u.usename, d.description
FROM pg_catalog.pg_user u
   LEFT JOIN pg_catalog.pg_shdescription d
      ON d.objoid = u.usesysid
         AND classoid = 'pg_catalog.pg_authid'::regclass;
© www.soinside.com 2019 - 2024. All rights reserved.