授予对象级权限
语法格式
| 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
sqlCREATE 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
sqlGRANT ALL ON test_permission TO u1;
该示例表示授予用户 U1 对于表 test_premission 所有数据库所允许的操作权限,包括:INSERT、UPDATE、DELETE、SELECT、REFERENCES 等。