我在PostgreSql中有DB"test".我想写sql来获取所有者我的数据库.我搜索谷歌但回答未找到.请帮助我
DrC*_*sos 59
您可以在系统目录中找到这样的东西
SELECT d.datname as "Name",
pg_catalog.pg_get_userbyid(d.datdba) as "Owner"
FROM pg_catalog.pg_database d
WHERE d.datname = 'your_name'
ORDER BY 1;
And*_*Boc 35
您可以使用的组合pg_database,pg_users系统表和current_database()功能是这样的:
 SELECT u.usename 
 FROM pg_database d
  JOIN pg_user u ON (d.datdba = u.usesysid)
 WHERE d.datname = (SELECT current_database());
可以使用魔法 ::regrole 转换角色 OID 以给出所有者的角色名称:
SELECT datdba::regrole FROM pg_database WHERE datname = 'test' ;
| 归档时间: | 
 | 
| 查看次数: | 44514 次 | 
| 最近记录: |