Skip to content

授予对象级权限

语法格式

|   GRANT privileges ON name_space TO grantee_list opt_with_grant
|   GRANT privileges ON TABLE name_space TO grantee_list opt_with_grant    
|   GRANT privileges ON VIEW name_space TO grantee_list opt_with_grant
|   GRANT privileges ON PROCEDURE name_space TO grantee_list opt_with_grant
|   GRANT privileges ON SEQUENCE name_space TO grantee_list opt_with_grant

参数解释

  • privileges:授予权限操作类型,包括SELECT、UPDATE、EXECUTE等,若要授予对象的所有可操作权限,可使用ALL或ALL PRIVILEGES代替。
  • name_space:此处为指定授予操作权限对象名,对象名与privileges操作类型必须匹配,如该对象为TABLE,则不能授予EXECUTE权限。
  • grantee_list:被授予权限的用户名或角色名。

示例

  • 示例1

    sql
    CREATE TABLE test_permission(id int);
    CREATE USER u1 IDENTIFIED BY 'test_123@';
    GRANT INSERT ON test_permission TO u1;

    该示例表示授予用户U1对于表test_permission的数据插入权限,则用户U1对表test_permisssion无删除、查询、更改、引用等权限。

  • 示例2

    sql
    GRANT ALL ON test_permission TO u1;

    该示例表示授予用户U1对于表test_premission所有数据库所允许的操作权限,包括:INSERT、UPDATE、DELETE、SELECT、REFERENCES等。