Content
/*SQL语句基本格式*/
1.grant语句的一般格式:
grant <权限>,......
on <表名>,......
to <用户>,......
[with grant option]
2.revoke语句的一般格式:
revoke <权限>,......
on <表名>,......
from <用户>,......[cascade]
3.创建角色:
create role <角色名>
4.给角色授权:
grant <权限>,......
on <表名>,......
to <角色名>,......
5.将角色授予用户:
exec sp_addrolemember <角色名>,<用户名>
6.从用户处收回角色:
exec sp_droprolemember <角色名>.<用户名>
/*重点归纳*/
1.grant语句中,如果指定了with grant option子句,
则获得某种权限的用户还可以把这种权限再授予其他的用户。
2.角色是权限的集合。
一、应用题
1、今有以下两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号)
部门(部门号,名称,经理名,地址,电话号)
请用SQL的GRANT和REVOKE(加上试图机制)完成以下授权定义或存取控制功能:
1、用户王明对两个表有SELECT权限。
2、用户李勇对两个表有INSERT和DELETE权限。
3、用户刘星对职工表有SELECT权限,对工资字段有更新权限。
4、用户张新对两个表有修改表结构权限。
5、用户周萍对两个表有所有操作权,并能授予其他用户的权限。
6、撤销用户周萍的所有权限。
/*参考解答*/
1、grant select
on 职工,部门
to 王明
2、grant insert,delete
on 职工,部门
to 李勇
3、grant select,update(工资)
on 职工
to 刘星
4、grant alter table
on职工,部门
to 张新
5、grant all privileges
on 职工,部门
to 周萍
with grant option
6、revoke all privileges
on 职工,部门
from 周萍 cascade
版权声明:本文为qq_46139801原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。