gpt4 book ai didi

sql - 检查 Postgres 上的外部表所有者

转载 作者:行者123 更新时间:2023-11-29 12:42:59 25 4
gpt4 key购买 nike

我在 Postgres 上有一个外部表,链接到另一个服务器。我试图在此表上进行选择,但出现此错误:

ERROR:  permission denied for relation whitelist

有谁知道如何检查外部表的所有权吗?我已经试过了,但它只返回有关本地表的信息...

select t.table_name, t.table_type, c.relname, c.relowner, u.usename
from information_schema.tables t
join pg_catalog.pg_class c on (t.table_name = c.relname)
join pg_catalog.pg_user u on (c.relowner = u.usesysid)
where t.table_schema='schema_name';

最佳答案

任何管理工具都应该能够告诉您谁拥有外部表(或任何其他数据库对象)。在 pgAdmin 中,当您在对象浏览器中选择外部表时,所有者会出现在“属性”选项卡中,当您运行 \dE 时,psql 将报告所有者。

如果您真的需要查询,应该这样做:

SELECT
oid::regclass,
pg_get_userbyid(relowner)
FROM pg_class
WHERE relkind = 'f'

关于sql - 检查 Postgres 上的外部表所有者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39752625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com