欢迎来到天天文库
浏览记录
ID:30880853
大小:72.00 KB
页数:3页
时间:2019-01-03
《实验四数据库完整性与安全性》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验四数据库完整性与安全性一.实验目的:理解并掌握利川SQLServer2000进行完整性和安全性控制的基本操作和命令。并熟悉触发器的使用。二.实验属性:设计性。三.实验仪器设备及器材:装有SQLServer2000的电脑。四.实验要求1.预习SQLServer2000中触发器的概念和使用方法,以及利用createtrigger语句定义触发器的方法。2.预习SQLServer2000中安全性架构,以及创建安全性账户和数据库角色等的方法。2.实验前仔细阅读实验指导书,理解实验要求。3.实验中要求完成如下工作(其中涉及的表是实验一中建
2、立的表):五.实验内容1.触发器的使用1.1创建一个insert触发器,当在Student表屮插入一条新记录时,给出'你已经插入了一条新记录!!!'的提示信息。createtriggerStu_insertonStudentafterinsertasprint'你己经插入了一条新记录!!!’;1.2创建-个insert触发器,当在SC表中插入一条新记录时,Sno和Cno必须是student和Course中存在的学号和课程号,且Grade应该在0——100之间。createtriggerSC_insertonSCforinserta
3、sdeclare@snchar(9)』@cnchar(4)}©scoresmal1intselect@sn=Sno,@cn=Cno,@score=Gradefrominsertedif(@snin(selectSnofromStudent)and@cnin(selectCnofromCourse)and©scorebetween0and100beginraiserror厂允许插入!!!',16,1)rollbackend;1.3创建一•个after触发器,在Student表中删除某学牛的记录时,删除其相应的选课记录。createt
4、rigger5tu_de丄eteonSCafterdeleteasdeletefromStudentwhereSnoin(selectSnofromdeleted);1.4创建一个insteadof触发器,当在Course表中删除记录时,不允许删除Course表中的数据。createtriggerCou_de丄ete«onCourseinsteadofdeleteasbeginIdeletefromCourseend:w•••••••1.数据库安全性2.1在企业管理器中创建数据库用户Ul、U2、U3和数据库角色Rl、R2、R3,并
5、对其操作权限进行设置。数据库角色成员叨:库角色中允许public□db^ownerdb.accessadmindb^securityadmin□db.ddladmindb.backupoperator□db.datareader□db.datawriter□db.denydatareader2.2使用SQL语言对数据库用户和角色的权限的授予。(1)把查询Student表的权限授给用户U1:grantselectonStudenttoU1;(2)把对Student表和Course表的全部操作权限授了用户U2和U3grantallpr
6、ivilegesonStudenttoU2,U3;grantallprivilegesoncoursetoU2,U3:;(3)把对Student表的Insert操作权限授予用户U2,并允许将此权限再授予其它用户。grantinsertonStudenttoU2:urithgrantoption;'2.3使用SQL语言进行数据库对用户和角色权限的收回。2.3.1把用户U2对Student表的Insert的权限收回。revokeinsertonStudentfromU2;2.3.2收回所有用户对表student的查询权限revokea
7、llprivilegesonStudentfrompublic:2.3.3通过和色来实现将一组权限授予一个用户。(1)先在企业悸理器下创建一个角色R1(2)在企业管理器下和使用SQL脚本两种形式对角色授予权限,使R1拥有对Student表的SELECT、UPDATE、INSERT权限。grantselect,updatejinsertonStudenttoR1;(3)将这个角色授予用户U4,使其拥有角色R1所包含的全部权限(SELECT、UPDATE、INSERT)。grantselectjupdate,insertonStude
8、nttoR1;grantR1toU4;(4)通过R1收冋U4的3个权限(SELECT、UPDATE、INSERT)。revokeKIfromU4;(5)对角色R1权限的修改grantdeleteonStudenttoR1:;(6)收回角色R1对St
此文档下载收益归作者所有