Postgresql不';不显示创建者的权限。为什么?

Postgresql不';不显示创建者的权限。为什么?,sql,postgresql,Sql,Postgresql,我是这样创建db的: CREATE USER moderator_area_dev CREATEDB LOGIN PASSWORD 'moderator_password_area_dev_'; CREATE DATABASE moderator_area_dev WITH OWNER = moderator_area_dev CONNECTION LIMIT = -1; GRANT ALL PRIVILEGES ON DATABASE moderator_area_dev to moderat

我是这样创建db的:

CREATE USER moderator_area_dev CREATEDB LOGIN PASSWORD 'moderator_password_area_dev_';
CREATE DATABASE moderator_area_dev WITH OWNER = moderator_area_dev CONNECTION LIMIT = -1;
GRANT ALL PRIVILEGES ON DATABASE moderator_area_dev to moderator_area_dev;
之后,我提取我的所有者用户的权限,希望看到所有授予的权限

SELECT table_catalog, table_schema, table_name, privilege_type
FROM   information_schema.table_privileges 
WHERE  grantee = 'moderator_area_dev'

但事实上,我所能看到的只是一个空洞的结果。为什么为空?

因为用户对任何表都没有权限

您刚刚创建了用户,并且没有给它在任何表上的权限,那么您期望什么呢

即使在检查之前连接到新数据库
版主区域\u dev
,您也找不到任何内容,因为该数据库尚未包含任何表,除了

  • 属于引导超级用户的目录表

  • template1


谢谢你的回答。我有一些问题:1)一开始发出“授予所有特权”命令有什么意义?2) 如何授予用户权限?
grant
语句完全没有意义,因为所有者拥有所有这些权限:连接、创建模式和临时表。你说的“用户权限”是什么意思?我想看看我的用户“版主”拥有什么权限?要知道用户拥有什么权限是不容易的。您必须查询数据库中的所有对象。