版本8.4.16(在版本中没有选择)。
我按如下方式登录数据库:

psql -d JRuser

结果提示是:
JRuser=>

我确实希望看到架构“translate”中所有关系的列表
No relations found.

但是我可以从模式中的任何表中进行选择,而不会出现任何问题。例如:
select * from translate.storage; --works fine

通过执行以下操作,我已确保JRuser的访问权限是正确的:
                                 List of schemas
        Name        |  Owner   |  Access privileges   |           Description
translate           | JRuser   | JRuser=UC/JRuser     |
                               : postgres=UC/JRuser

为什么我看不到translate模式中的表?

最佳答案

\d在psql中只显示可见的表,即在search_path中。
试试看:

SHOW search_path;
SET search_path= translate;
\d

您会话的设置可能已以某种方式更改。有多种方法可以做到这一点:
How does the search_path influence identifier resolution and the "current schema"
有关dba.SE的后续问题:
Why can't I see my table (PostgreSQL) when I use \dt(+) inside psql?

10-08 17:31