数据库实验课堂作业-1.5数据控制

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/pfl_327/article/details/84027935
  					数据库实验课堂作业

1.5数据控制

实验内容:
(1)使用GRANT语句对用户授权,对单个用户和多个用户授权,或使用保留字PUBLIC对所有用户授权。对不同操作对象包括数据库,视图,基本
表等进行不同权限的授权。
(2)使用WITH GRANT OPTION 子句授予用户传播该权限的权利。
(3)在授权时发生循环授权,考察DBS能否发现这个这个错误。如果不能,结合取消权限操作,查看DBS对循环权限的控制。
(4)使用REVOKE子句收回授权,取消授权的级联反应。

代码:

use school
 
--(1).授予所有用户对表courses的查询权限
grant select 
on courses
to public
 
--(2).对USER1授予对表STUDENTS插入更新的权限,但不授予删除权限
grant insert,update
on students
to user1
with grant option 
 
--(3).允许user2在表choice中插入元组,更新的score列,可以选取除了sid以外的所有列。
--先创建视图
create view choiceview(no,sid,cid,score)
as select no,sid,cid,score from choices 
--授予权限
grant select,insert,update(score)
on choiceview
to user2
 
--(4).
grant insert,update
on students
to user2
with grant option
 
--(5).收回权限
--登录
revoke select
on courses 
from user1
--收回
revoke select
on sourses
from public
 
--(6).
grant insert,update
on students
to user3
with grant option 
--
grant insert,update
on students
to user1
--
revoke insert,update
on students
from user3
--
revoke insert,update
on students
from user3
cascade 
--
revoke insert,update
on students
from user1
cascade

猜你喜欢

转载自blog.csdn.net/pfl_327/article/details/84027935