PostgreSQL 12 中的 GRANT 命令用于授予用户或角色对数据库对象(如表、视图、函数等)的访问权限。它的一般语法如下:
GRANT [权限列表] ON [对象类型] [对象名称] TO [用户或角色];
其中:
权限列表:表示要授予的权限,可以是多个权限,用逗号分隔。常见的权限包括 SELECT、INSERT、UPDATE、DELETE、REFERENCES、TRIGGER 等等。对象类型:表示要授予权限的对象类型,可以是 TABLE、VIEW、FUNCTION、SEQUENCE 等等。对象名称:表示要授予权限的对象名称。用户或角色:表示要授予权限的用户或角色。
以下是一些示例:
授予用户 alice 对表 mytable 的 SELECT 权限: GRANT SELECT ON mytable TO alice;
授予角色 myrole 对视图 myview 的 SELECT 和 UPDATE 权限: GRANT SELECT, UPDATE ON myview TO myrole;
授予用户 bob 对函数 myfunc 的 EXECUTE 权限: GRANT EXECUTE ON FUNCTION myfunc TO bob;
授予用户 charlie 对序列 myseq 的 SELECT 和 USAGE 权限: GRANT SELECT, USAGE ON SEQUENCE myseq TO charlie;
请注意,只有具有足够权限的用户或角色才能授予或撤销权限。如果您没有足够的权限,则无法执行此操作。
参考阅读
发表评论