大型数据库实验报告(实验四)

大型数据库实验报告(实验四)

实验四 视图、序列

【实验目的】

(1)掌握视图的创建及管理方法;
(2)掌握序列的创建及使用方法。

【实验原理】

  1. 视图的创建及管理
  2. 序列的创建及使用

【实验内容】

一、创建管理视图
[操作验证]
(1)使用账户SYS登录数据库,对SCOTT账户进行解锁,并设置密码为Oracle11g。
大型数据库实验报告(实验四)
(2)以scott用户登录数据库,以下操作在SCOTT模式下进行。查看该模式下所有emp和dept表的表结构。
大型数据库实验报告(实验四)
大型数据库实验报告(实验四)
(3)创建视图v_empSalary,用于查询每个员工的员工号empno、员工的姓名ename、工资sal、奖金comm,最终工资(=工资+奖金)。(提示:使用nvl(exp1,exp2)函数,即判断exp1是否为空值,如是空值该函数值为exp2的值;否则值为exp1的值,nvl(comm,0))
大型数据库实验报告(实验四)
(4)使用视图v_empSalary,查询奖金低于1000元的员工号、员工姓名、工资、奖金。
大型数据库实验报告(实验四)
(5)查询视图v_empSalary中各列的可更新性
大型数据库实验报告(实验四)
(6)创建视图v_dep_avgsal,查询各部门员工的平均薪金
大型数据库实验报告(实验四)
(7)查询视图v_dep_avgsal中各列的可更新性。
大型数据库实验报告(实验四)
(8)创建视图v_depart_empl,查询在“Sales”部门任职的员工的员工号、员工姓名、部门名称dname、职位名称job、工资sal和奖金信息
大型数据库实验报告(实验四)
(9)查询视图v_depart_empl中各列的可更新性。
大型数据库实验报告(实验四)
二、创建管理序列
[操作验证]
(1)创建一个学生成绩表scores,其表结构如下所示:
学生成绩表scores结构

列名 列说明 数据类型 长度 为空性 约束或属性
scoreId 成绩序号 int 非空 主键
studId 学号 Char 10 非空
courseId 课程号 char 10 非空
score 成绩 number (4,1) 默认为0
insertTime 录入时间 date 默认为系统时间

大型数据库实验报告(实验四)
(2)创建序列seq_scoreId,将该值用于学生成绩表scores的成绩序号列scoreId,其初始值为100,增量为10。
大型数据库实验报告(实验四)
(3)向学生成绩表插入5条以上记录,记录自拟,要求成绩序号列使用序列seq_scoreId的值。
大型数据库实验报告(实验四)
(4)提交记录,并查询学生成绩表的所有记录。
大型数据库实验报告(实验四)