Sql postgres:如何授予用户读取权限?
我已将.sql文件导入postgres。我创建了一个名为“yaq”的数据库,并将其导入数据库Sql postgres:如何授予用户读取权限?,sql,postgresql,Sql,Postgresql,我已将.sql文件导入postgres。我创建了一个名为“yaq”的数据库,并将其导入数据库 psql=# grant all privileges on database yaq to Jannat; postgres@server:~$ psql yaq psql (9.1.8, server 9.1.9) Type "help" for help. yaq=# \dt List of relations Schema | Name |
psql=# grant all privileges on database yaq to Jannat;
postgres@server:~$ psql yaq
psql (9.1.8, server 9.1.9)
Type "help" for help.
yaq=# \dt
List of relations
Schema | Name | Type | Owner
--------+-----------------+-------+----------
public | relationalfacts | table | yaq
public | spatial_ref_sys | table | postgres
(2 rows)
yaq=# select * from relationalfacts
yaq-# ;
id | relation | arg1 | arg2 | timebegin | timeend | location | locationlatitude | locationlongitude | primarywitness | context
----+----------+------+------+-----------+---------+----------+------------------+-------------------+----------------+---------
(0 rows)
我认为,由于我已将所有特权授予所有者“yaq”而不是“yago”,因此我无法阅读该关系。是否有某种方式可以将关系表yaq的读取权限授予用户Jannat?请帮助
授予数据库上的所有…
不会递归授予该数据库中的架构、函数、表等的权限
GRANT ALL
用于数据库
授予数据库的使用权
和连接权
。仅此而已
要授予表的权限,请使用表grant语句之一或模式中所有表的grant ALL。。。到…
有关详细信息,请参阅
<> >在代码> Graveing用户之前,考虑是否应该使用几个角色,然后<代码>授予/<代码>调用用户权限来充当这些角色。如果您开始添加更多用户,那么在开始时定义角色(组)将为您节省很多麻烦。非常感谢您的回答。如何检查表的架构名称?我正在帮助检查表中包含的关系\dt@JannatArora如果您不知道模式,则它们位于默认模式
public
。请参见\dn
以列出架构\dt
将架构列为输出中的第一列。