PostgreSQL 12 `GRANT` 命令

发布于:2023-09-14 ⋅ 阅读:(124) ⋅ 点赞:(0)

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;
    

请注意,只有具有足够权限的用户或角色才能授予或撤销权限。如果您没有足够的权限,则无法执行此操作。


网站公告

今日签到

点亮在社区的每一天
去签到