实验四oracle的安全性和完整性控制

实验四oracle的安全性和完整性控制

ID:10867746

大小:42.00 KB

页数:3页

时间:2018-07-08

实验四oracle的安全性和完整性控制_第1页
实验四oracle的安全性和完整性控制_第2页
实验四oracle的安全性和完整性控制_第3页
资源描述:

《实验四oracle的安全性和完整性控制》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验四oracle的安全性和完整性控制实验目的:1.通过本实验能够熟练应用sql语言进行用户权限的授予和回收。2.熟练掌握实体完整性,参照完整性及用户定义的完整性的定义。3.并体会oracle数据库系统在安全性和完整性保护方面的特性。实验要求:1.在进行本实验之前,应熟练课程内容,在上机之前做好实验计划,编写好相应的代码。实验内容:Grant语句的格式:Grant<权限>[,<权限>]…On<对象类型><对象名>[,<对象类型><对象名>]…To<用户>[,<用户>]…[withgrantoption]Public全体

2、用户如果指定了[withgrantoption],则获得某种权限的用户还可以把这种权限再授予其他用户。但不允许循环授权。(一)授权1.创建用户u1,u2,u3…选择全部为connect角色。2.用户jsj***把查询某个表(如emp,student均可)权限授给用户u1,u1执行相应的查询。l以u1的用户名登陆,查看u1是否具有授予的权限。如:查询u1用户的全体学生的详细记录。3.jsj***把对Student表和Course表的全部权限授予用户u2;l以u2身份登陆数据库,查看u2是否具有授予的权限。如:修改JSJ*

3、**中的student的数据。4.jsj***把对表SC的查询权限授予所有用户。l以u3身份登陆数据库,查看u3是否具有授予的权限。如:查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列如:查询各个课程号与相应的选课人数。1.授予用户u3具有修改表student(sdept)表的权限。l以u3身份登陆数据库,查看u3是否具有授予的权限。如:修改把‘MA’系改为‘GE’地理系。2.授予用户u3对student表的insert权限,并具有给其他用户授权的权限。3.用户u3将对表student的select,i

4、nsert权限授予u4,并允许将权限转授给其他用户。(首先应该以u3的身份重新登陆数据库,然后再进行授权)l以u3身份登陆数据库,查看u3是否具有授予的权限。如:向jsj***的student表中插入一条记录。(一)回收权限1.收回用户u3修改学生系别(sdept)的权限2.收回所有用户对表sc的查询权限3.收回用户u3对sc表的insert权限4.在回收权限之后验证用户u4是否真正丧失了该权限(查询表,插入记录)如:查询jsj***的student表内容如:向jsj***的student表中插入一条记录(二)角色1.

5、创建一个角色2.给角色授予权限3.将角色授予某一用户4.检查用户是否具有相应的权限检查此用户是否具有相应权限。(三)完整性1.建立部门表DEPT,要求部门名称Dname列取值唯一,部门编号Deptno列为主码2.建立学生登记表Student,要求学号在9000至9999之间,年龄<29,性别只能是’男’或’女’,姓名非空。3.修改表Student的结构,由年龄小于29改为小于40。4.建立职工表EMP,要求每个职工的应发工资不得超过3000元。应发工资实际上就是实发工资列Sal与扣除项Deduct之和。对上述新建立和修

6、改定义的表,每个表输入3条数据,其中1条数据符合完整性约束,2条违反约束条件的,验证和体会Oracle的实体完整性和参照完整性。(一)触发器(选做)1.创建after触发器,当student表的学生学号发生变化,而且此学号被sc表引用,就自动更改sc表中被引用的sno值。2.监测触发器是否执行。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。