资源描述:
《实验六数据控制》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验六数据控制1、实验目的熟悉SQL的数据控制功能,能够使用SQL语川来向用户授予和收回权限。2、实验内容(1)使用GRANT语句来对用户授权,对单个用户或多个用户授权,或使用保留字PUBLIC对所有用户授权。对不同的操作对象包括数据库、视图、基本表等进行不同权限的授权。(2)使用WITHGRANTOPTION字句授予用户传播该权限的权利。(3)当在授权时发生循环授权,考察DBS能否发现这个错误。如果不能,结合取消权限操作,查看DBS对循环授权的控制。(4)使用REVOKE子句收回授权,取消授权的级联反应。3、实验步骤用SSMS在数据库Univ
2、ersity.Mis中建立三个用户USER1、USER2和USER3,他们在数据库中的角色是PUBLIC。请按以下要求,分别以管理员身份或这三个用户的身份登陆到数据库中,进行操作,并记录操作结果。(1)授予所有用户对表Courses的查询权限。以USER1的身份登陆到SSMS,用SQL语言查询Courses和Students表,查询结果如何?■SQLQueryl.sql•(loc…(dell-PCdell(52))*
3、□GRANTSELECTIONWangjy一Courses丨toPUBLIC
4、Ea消息命令已成功完成。•••udij□sel
5、ect*Lfro^nWangjy_Courses门一■■■■■■■■■■■3结果」Jl消息wjy_Cnovyjy—Cnamewjy_Creditavg_Sco…c—stu1IC01C++4NULLNULL2C02UML3NULLNULL3C03JAVA3NULLNULL4C04算法分析与设计2NULLNULL5C05数据库原理及其应用2NULLNULL6C06数据结拘与算法分析2NULLNULL7C07英语4NULLNULLSQLQueryl.sql-(loc…(del
6、.PCdell(52))*□select*1-fromWangjy一St
7、udents□结果消息w)y_SnowjySnamewjy—SemailwjyScredit1
8、S01王建平WJP@zjut.edu.cn23.12S02刘华LH@zjut.edu.cn34.63S03范林军FLJ@zjut.edu.cn16.64S04李伟LW@zjut.edu.cn15.85S26黄河Huanghe@zjut.edu.cn13.46S52长江Changjiang@zjut.edu.cn12.4exsn1男男女女男男(2)授予用户USERl对表Students插入和更新的权限,但不授予删除权限,并且授予用户USER1传播这两个
9、权限的权利。以USER1的身份登陆到SSMS,用SQL语言插入和更新Students表,结果如何?(注意更新操作的授权)grantselect,update,insertonWangjy_StudentstoUSERlowithgrantoptioninsertintoWangjy_Studentsvalues(•S09•,•张三’,’zs@qq.com1z•20•,11)结果:成功updateWangjy_Studentssetwjy_Sname=•李叫■wherewjy_Sno='S08'结果:成功(3)允•用户USER2在表Reports
10、中插入元组,更新Score列,可以查询除了Sno以外的所有列。以USER2的身份登陆到SSMS,用SQL语言插入更新并查询reports表,结果如何?(注意更新操作的授权)•aviL^uery^.sqi-yoc...(aen-Kuaeusyu^uery丄.sqi-(loc...(aeii-HCaeii□grantinsertrupdate(wjy_Score)select(wjy_Tno厶wjy_Cnorwjy_Score上onWangjy一Reports-toUSER2更新:M11MI
11、■繡
12、—I,SQLQuery3.sql-(loc..
13、.(dell-PCdell(56))*SQLQuery2.sql-(loc...(del卜PCdell(54))*SQLQuery:□updateWangjy一ReportsLsetwjy_Score=,59f
14、d—ur消息(16行受影响)查询:SQLQuery4.sql-(loc…(del
15、.PCdell(57))*SQLQuery□selectwjy_ScoreLfromWangjyReports3结果Lii消息(4)用户USER1授予用户USER2对表Students插入和更新的权限,并且授予用户USER2传播插入操作的权利。分别以
16、USER1和user2的身份登陆到SSMS,用SQL语言验证以上授权操作,结果如何?SQLQueryl.sql-(loc…(dell-PCdell(