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

本文详细介绍数据库权限管理的具体操作,包括使用GRANT语句为不同用户分配数据库、视图及基本表的查询、插入、更新权限,并探讨WITH GRANT OPTION子句的作用。同时,通过实例演示如何避免循环授权错误,以及使用REVOKE子句撤销权限的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  					数据库实验课堂作业

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值