【Oracle】实验六 模式对象管理与安全管理

【实验目的】

  1. 了解模式对象的类型
  2. 掌握命令方式建立表、视图、索引等常见对象的方法
  3. 了解保存点、回退、提交操作
  4. 熟悉Oracle中权限分类和设置,理解系统提供用户的角色和权限
  5. 熟练使用建立用户、角色,为用户授权、授予角色的命令

【实验内容】

  1. 创建一个TESTUSER用户,密码为test,默认表空间为users表空间,在users表空间中quota属性为unlimited
  2. 创建用户后为其授予登录数据库和创建数据库对象的权限
  3. TESTUSER用户登录数据库
  4. 创建学生信息表(学号,姓名,性别,入学成绩),定义主键和输入数据(至少5条数据),提交添加的数据。并完成下面的题目:
    1. 再继续添加2条数据,设置一个保存点savepoint,再添加1条数据,执行回退到保存点的回退命令。查看此时表中数据
    2. 查询入学成绩大于480的学生信息
    3. 建立男生信息视图(创建视图的权限需要提前授予)
    4. 在“成绩”字段上建立B-树索引
  5. 在testuser用户登录下,创建一个表簇,名为empl_dep,容纳empl表和dep表,有公共字段depno(簇键),大小为500,默认表空间为USERS表空间,存储参数为:初始化区间大小为100K,第二区间为200K等。
  6. 在表簇中建立empl表和dep表
  7. empl表(职员表)的主键为eno,外键为depno
  8. dep表(部门表)的主键为depno。
  9. 在表簇中建立一个簇键索引,名为empl_dep_index。
  10. 授予scott用户在empl表上的所有权限,提示:授权和收回权限可在sys/system/testuser用户登录以后进行授权。

(1)授权后,更改为scott用户登录,测试是否能对empl表进行查改增删

  1. 收回scott用户拥有的empl表上DELETE权限,再次测试scott用户对empl表的删除操作是否还能执行

【实验记录】

  1. 创建一个TESTUSER用户,密码为test,默认表空间为users表空间,在users表空间中quota属性为unlimited

登录系统管理员


按题目要求创建用户

  1. 创建用户后为其授予登录数据库和创建数据库对象的权限

  1. TESTUSER用户登录数据库

  1. 创建学生信息表(学号,姓名,性别,入学成绩),定义主键和输入数据(至少5条数据),提交添加的数据。并完成下面的题目:

创建表并添加了五条数据

  1. 再继续添加2条数据,设置一个保存点savepoint,再添加1条数据,执行回退到保存点的回退命令。查看此时表中数据

再添加两条数据


设置一个保存点


再添加一条数据


执行回退到保存点的回退命令(此处因为将保存点的名字也命名为了savepoint,需要输入两个savepoint才能成功回退,否则提示需要保存点名称,具体见实验总结)


查看此时表中数据

  1. 查询入学成绩大于480的学生信息

  1. 建立男生信息视图(创建视图的权限需要提前授予)

在系统管理员下授予视图权限


返回testuser用户。创建视图


查看是否建立成功


建立成功

  1. 在“成绩”字段上建立B-树索引

  1. 在testuser用户登录下,创建一个表簇,名为empl_dep,容纳empl表和dep表,有公共字段depno(簇键),大小为500,默认表空间为USERS表空间,存储参数为:初始化区间大小为100K,第二区间为200K等。

  1. 在表簇中建立empl表和dep表
  2. empl表(职员表)的主键为eno,外键为depno

  1. dep表(部门表)的主键为depno。

  1. 在表簇中建立一个簇键索引,名为empl_dep_index。

  1. 授予scott用户在empl表上的所有权限,提示:授权和收回权限可在sys/system/testuser用户登录以后进行授权。

在testuser用户下进行授权

(1)授权后,更改为scott用户登录,测试是否能对empl表进行查改增删
先在dep表下建立两个部门

更改为scott用户登录

测试增加操作

测试查询操作

测试修改操作

测试删除操作

  1. 收回scott用户拥有的empl表上DELETE权限,再次测试scott用户对empl表的删除操作是否还能执行

在sysdba下收回权限

在scott下测试删除操作

即删除操作已经不能执行。

【实验小结】

报错:

这是因为设置保存点时将保存点的名字也设置成了savepoint,使得数据库不能正确识别,解决方案是输入两遍savepoint,第一个用于指明类型,第二个用于指明名称。更好的解决方式是避免使用关键字。

  • 20
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Robbi_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值