3.5数据控制SQL语旬
3.5数据控制SQL语旬
- GRANT
- REVOKE
- DENY
作用:控制用户数据访问权
GRANT
GRANT 语句是一种由数据库对象创建者或管理员执行的授权语句,把访问数据库对象权限授予给其他角色。
格式
GRANT <权限列表> ON <数据库对象> TO <用户或角色> [ WITH GRANT OPTION ];
假定系统管理员希望将Register表的SELECT、INSERT、UPDATE、DELETE访问权限赋予学生角色(RoleS),其 授权控制SQL语句如下。
GRANT SELECT, INSERT, UPDATE, DELETE ON Register TO RoleS;
当这个语句执行后,学生角色(RoleS)就具有了对Register表的数据增加、更新、删除和查询的权限。如果上面的 授权SQL语句还带有WITH GRANT OPTION(授权选项),则学生角色还可以将这些权限授予其他用户。
REVOKE
收回授予给其他角色的权限。
【例】在选课管理系统数据库中,若系统管理员角色需要收回角色RoleS对Register表的DELETE访问权限,其 控制SQL语句如下。
REVOKE DELETE ON Register FROM RoleS;
当这个语句执行后,学生角色(RoleS)就失去了对Register表的数据删除权限。
DENY
DENY语句用于拒绝给当前数据库内的用户或者角色授予权限,并防止用户或角色通过其组或角色成员继承权限。 DENY语句格式为
【例】在选课管理系统数据库中,若系统管理员角色(RoleA)拒绝教师角色(RoleT)对Teacher表的 DELETE访问权限,其控制SQL语句如下。
DENY DELETE ON Teacher TO RoleT;
当这个语句执行后,教师角色(RoleT)就失去了对Teacher表的DELETE数据权限。
---------------------------
“朝着一个既定的方向去努力,就算没有天赋,在时间的积累下应该也能稍稍有点成就吧。”