查询用户授权时出错 "relation "sql_features“不存在”

Error while querying user grants "relation "sql_features" does not exist"

我想确定我的 Redshift 用户对模式中各种对象的所有授权,我正在为其使用以下代码,但出现错误。

SELECT
    u.usename,
    t.schemaname||'.'||t.tablename,
    has_table_privilege(u.usename,t.tablename,'select') AS user_has_select_permission
FROM
    pg_user u
CROSS JOIN
    pg_tables t
WHERE
    u.usename = 'userid'

ERROR: 42P01: relation "sql_features" does not exist

感谢@blamblam 为我指明了可行的解决方案。

此外,我还从 post 了解到,我犯了一个错误,只传递了对象名称,而我需要传递完全限定的对象名称 (schema_name.object_name)。

因此,经过上述更改后,查询看起来像这样并且有效:

SELECT
    u.usename,
    t.schemaname||'.'||t.tablename,
    has_table_privilege(u.usename,t.schemaname||'.'||t.tablename,'select') AS user_has_select_permission
FROM
    pg_user u
CROSS JOIN
    pg_tables t
WHERE
    u.usename = 'userid'