Oracle数据库的使用
- 格式:doc
- 大小:54.00 KB
- 文档页数:3
实验一数据库系统的使用
1.实验目的
●熟悉和掌握数据操作语言和数据查询语言;
●使用对象-关系SQL进行建模和查询
●掌握用户、权限和角色的创建和管理,以及数据库审计
2.实验要求
●独立完成实验内容;
●实验报告;(简单要求如下)
1)实验的整个过程(包括用户身份,SQL执行语句,SQL执行结果(截屏))
2)回答实验中提出的问题
3)结果分析。
[注] 标有可选的实验可以不做。
3.实验内容
3.1 创建用户、角色
由系统管理员(admin)创建以下数据表:课程信息表CourseInfo,排课信息表ClassInfo,部门代码表DepartmentInfo,教师信息表TeacherInfo,学生信息表StudentInfo,选课信息表SelectiveInfo,保存在系统管理员的schema中。请按照文档lab1_DataModel.doc的表结构创建表。
实验步骤:
1)建立角色;
2)为角色分配权限;
3)建立密码管理和资源限制Profile文件;
4)建立用户;
5)为用户分配角色;
6)用户登录,执行相应的SQL操作。
3.2 权限管理及安全信息查询
1)系统管理员admin登录选课系统数据库,登录三次失败,第四次输入正确的密码进
行登录,会出现什么情况?为什么?
2)使teacher1具有创建数据表系统权限,以用户teacher1登录,创建一个部门代码表
DepartmentInfo作为系统管理员创建的选课信息表的备份;
3)用户teacher1登录,分配学生用户(你的名字)查看teacher1. DepartmentInfo记录
的权限;学生用户登录,查看teacher1. DepartmentInfo中的记录;〔可选〕
4)从数据字典中查看teacher1和学生用户的信息;
5)从数据字典查看teacher1可使用的数据表空间的空间大小信息。〔可选〕
6)取消用户teacher1创建数据表权限;取消学生用户查看teacher1. DepartmentInfo记
录的权限;
7)从数据库中删除用户teacher1。
3.3 关系查询
1)查询SelectiveInfo表,显示当前时间7天前的选课记录(不容许写定日期)。
2)显示选课数目大于2门的学生名单(学号、姓名、院系代码)(提示:利用子查询
和group by和聚组函数)
3)查询所有没有教学任务的教师情况(编号、姓名、所在院系)(提示:用(+)操
作和NULL)
3.4 基本对象-关系SQL
1)创建一个自定义数据类型,代替ClassInfo表中的classTimePlace字段,包含属性有:
上课起始时间、上课结束时间、上课地点。
2)创建一个ClassInfoTemp表,包含ClassInfo里的所有字段(其中classTimePlace字
段的类型用自定义类型代替)
3)往上面这个表中插入2-5行记录,并根据上课地点查询该表所有记录。
4)因为一门课一周可能有几次课,我们需要设计一个汇集类型的数据表来存放一门课
的所有上课时间地点信息(包含内容同1),然后创建ClassInfo2表,其中
classTimePlace字段的作为一个表类型列,可以包含多条上课时间地点记录。实验
要求:建立这样的ClassInfo2表。(可选)
5)往上表中插入若干条记录,每一条classinfo记录中有1-2条classTimePlace信息。
(可选)
4.参考资料
●Oracle 9i/10g Database Administrator's Guide
5.评分标准
●A——完成必做内容及选做内容,实验报告叙述清晰完整,有详尽的分析和总结;
●B——完成必做内容及部分选做内容,实验报告叙述清晰完整,分析合理;
●C——完成必做内容,实验报告良好;
●D——能完成必做内容;
●E——未按时完成必做内容,或者抄袭。