为什么命令\ dt给出 - 没有找到关系?

时间:2016-11-29 12:08:47

标签: postgresql

我在postgres中创建了一个数据库。它有3个空表。该表的用户tomSuperuser以及root。我以tom身份登录并连接到mydb数据库。但是命令\d\dt仍然给出了no relations found

postgresql中有SHOW TABLE的替代?

无法找到解决方案here

我从 - \dt *.*得到了结果。

4 个答案:

答案 0 :(得分:6)

您的search_path不是问题,可能是您所描述的in the answer here架构权限问题。请与\dn+一起检查public架构是否指示postgres角色的权限,如果没有,则授予它们:GRANT ALL ON SCHEMA public TO public;

答案 1 :(得分:4)

我使用双引号解决了我的问题,例如 \d "Table_name"。因为我的表名像 Foo, Bar 一样大写。希望能帮到人。

答案 2 :(得分:0)

如果您在不同端口上的服务器上运行着不同的postgres实例,那么当您使用特定端口psql -p 5432 databasename(或psql -p 5433 databasename等)连接数据库时,这会有所帮助

答案 3 :(得分:0)

你一定没有在最后添加分号,这就是我经常发生的事情我总是忘记我的分号 -> create table nameoftable()