- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
PAGE 1
课内上机实验内容与要求
实验5、数据控制
5.1 实验目的
熟悉SQL的数据控制功能,能够使用SQL语句来向用户授予和收回权限。
5.2 实验内容
使用GRANT语句来对用户授权,对单个用户或多个用户授权,或使用保留字PUBLIC对所有用户授权。对不同的操作对象包括数据库、视图、基本表等进行不同权限的授权。
使用WITH GRANT OPTION字句授予用户传播该权限的权利。
当在授权时发生循环授权,考察DBS能否发现这个错误。如果不能,结合取消权限操作,查看DBS对循环授权的控制。
使用REVOKE子句收回授权,取消授权的级联反应。
5.3 实验步骤
用企业管理器在数据库University_Mis中建立三个用户USER1、USER2和USER3,他们在数据库中的角色是PUBLIC。请按以下要求,分别以管理员身份或这三个用户的身份登陆到数据库中,进行操作,并记录操作结果。
授予所有用户对表Courses的查询权限。
grant select
On Liangyx_Courses to USER1,USER2,USER3
以USER1的身份登陆查询分析器,用SQL语言查询Courses和Students表,查询结果如何?
对Course的查询
SELECT * FROM LIANGYX_COURSES
对Student
SELECT * FROM Liangyx_Students
不能访问
原因:在一开始只授予了course的权利。
授予用户USER1对表Students插入和更新的权限,但不授予删除权限,并且授予用户USER1传播这两个权限的权利。以USER?的身。。。
Grant insert , update
On Liangyx_Students
To User1
With grant option
允许用户USER2在表Reports中插入元组,更新Score列,可以查询除了Sno以外的所有列。以USER?的身。。。
用户USER1授予用户USER2对表Students插入和更新的权限,并且授予用户USER2传播插入和更新操作的权利。以USER?的身。。。
Grant insert ,update
On Liangyx_Students
To users
With grant option
收回对用户USER1对表Courses查询权限的授权。以USER?的身。。。
Revoke select
On Liangyx_courses
From user1
由上面(2)和(4)的授权,再由用户USER2对用户USER3授予表Students插入和更新的权限,并且授予用户USER3传播插入操作的权力。
Grant insert ,update
On Liangyx_Students
To user3
With grant option
这时候,如果由USER3对USER1授予表Students的插入和更新权限是否能得到成功?
如果能够成功,那么如果有用户USER2取消USER3的权限,对USER1会有什么影响? USER1的权限也会被连级取消,但是由于它有管理员赋予的权利,因此实际还保留了该权限。
如果再由DBA取消USER1的权限,对USER2有什么影响?
此时由于USER1没有了权限,因此连级的USER2也将失去该权限
实验10、触发器
10.1 实验目的
通过实验使学生加深对数据完整性的理解,学会创建和使用触发器。
10.2 实验内容 (用实验9的Teacher表)
(1) 为Teacher表建立触发器T1,当插入或使更新表中的数据时,保证所操作的纪录的Tage值大于0。
(2) 为Teacher表建立触发器T2,禁止删除编号为00001的CEO。
(3) Teacher表中的人员的编号是唯一且不可更变的,创建触发器T3实现更新中编号的不可改变性。
(4) 演示违反T1触发器的约束的插入操作。
(5) 演示违反T1触发器的约束的更新操作。
(6) 演示违反T2触发器的约束的插入操作。
(7) 演示违反T2触发器的约束的更新操作。
10.3 实验步骤
(1) 仍然使用自定义完整性实验中的Teacher表。为此表建立触发器T1,当插入或使更新表中的数据时,保证所操作的纪录的Tage值大于0。
在查询分析器中输入如下SQL语句
USE University_Mis
GO
CREATE TRIGGER T1 ON Teacher
FOR INSERT,UPDATE
AS
IF(SELECT Tage FROM INSERTED)1
BEGIN
PRINT ‘职工年龄必须是大于0的整数! 操作失败!’
ROLLBACK TRANSACTION
END
(2) 为Teac
您可能关注的文档
最近下载
- 新概念2英语1-96课:语法填空配套训练(含答案).pdf VIP
- (必练)中医执业助理医师资格备考题库资料宝典(核心题版).pdf
- 医院导医台登记表.docx
- 培训需求调查表(2024新版).docx VIP
- 广东省深圳市宝安某中学2024-2025学年数学九年级上册开学复习检测试题【含答案】.pdf VIP
- 三年级上册语文期末试卷【附答案】.doc
- 2024党纪法规知识测试题(含答案).PDF VIP
- 关于小学英语六年级上册英语识记知识自检-Unit10 Then and now教科版(广州)(含答案).doc VIP
- 大学美育学习通超星期末考试答案章节答案2024年.docx
- 四川省绵阳南山中学(含实验学校)初升高自主招生考试英语试卷(含.pdf VIP
文档评论(0)