oracle实验3
- 格式:doc
- 大小:1.26 MB
- 文档页数:13
实验报告
姓 名 学号 专业班级
课程名称 Oracle Database 11g 应用与开发教程(1) 实验室 B412
成 绩 指导教师
实验项目名称 Oracle数据库的应用开发与SQL代码编程(1)
一、实验目的:
(1)掌握查询的基本语法。
(2)掌握各种查询的方法,包括简单查询、连接查询、子查询、联合查询。
(3)掌握创建和维护索引的方法。
(4)掌握创建、修改和更新视图的方法。
(5)了解同义词和序列。
二、实验内容:
(1)简单查询
(2)连接查询
(3)子查询
(4)联合查询
(5)使用SQL *PLUS编辑命令、格式化输出
(6)创建、修改和删除索引
(7)创建、修改和删除视图
(8)创建、修改、删除和使用序列
(9)创建和删除同义词
三、实验步骤与结果(要求有截图):
1.简单查询
(1)选择表中若干列:先创建教师表,并插入数据;然后执行下列要求:
①输出表中的所有列。
图1 查询Teacher表的全部字段
②输出表中的部分列。
图2 查询全体教师的编号、姓名和职称
③计算列并为输出结果中的列指定别名。
图3 带有别名的查询
(2)选择表中的若干行,查询满足条件的元组。
图4 查询成绩小于60分的记录
图5 确定范围查找
图6 确定集合查找
图7 模糊查询
图8 带换码字符的模糊查询
图9 查询空值
图10 多重条件查询
(3)对查询结果排序
图11 将查询结果排序
(4)对数据进行统计
图12 统计表中教师的数量
(5)对查询结果分组
图13 分组统计
图14 带有ROLLUP子句的分组统计
图15 带有HAVING子句的分组统计
2.连接查询
(1)交叉连接查询
图16 交叉查询
(2)内连接查询
图17 等值连接
图18 自连接
(3)外连接查询
图19 左外连接
图20 右外连接
图21 完全外连接
3.子查询
(1)使用IN谓词的子查询
图22 使用IN谓词的子查询
(2)使用比较运算符的子查询
图23 使用比较运算符的子查询
(3)使用ANY或ALL的子查询
图24 使用ANY的子查询
(4)使用EXISTS的子查询
图25 使用EXISTS的子查询
4.联合查询
(1)使用UNION操作符
图26 使用UNION操作符
(2)使用INTERSECT操作符
图27 使用INTERSECT操作符
(3)使用MINUS操作符
图28 使用MINUS操作符
5.使用SQL *PLUS编辑命令、格式化输出
(1)使用SQL *PLUS编辑命令
①先查询教师表中所有教师的情况,再追加语句查询姓“张”的教师的情况。使用“/”来运行缓冲区中保存的SQL语句。
图29 使用追加排序语句前后的查询结果
②输入LIST命令,将得到缓冲区当前的所有命令行。
图30 LIST命令
图31 RUN命令
(2)保存、检索并运行文件
①首先,在SQL *PLUS中输入SQL语句,然后,使用SAVE命令将SQL *PLUS缓冲区中的内容保存到一个名为8-33.SQL的文件中。
图 32 保存文件
②使用get命令检索8-33.SQL文件的内容。运行此查询。或者使用START命令用一个步骤加载并运行8-33.sql文件的内容
图33 检索命令并运行
③使用EDIT命令编辑SQL *PLUS缓冲区中的内容。
图34 编辑命令 ④使用SPOOL命令可以将SQL *PLUS中的输出结果复制到一个文件中。再次运行这个查询语句,之后执行SPOOL OFF命令,关闭并保存结果文件。
图35 保存输出结果
(3)格式化输出列
图36 格式化输出结果
(4)设置页面大小和行大小
图37 设置页面大小
图38 显示页面信息
图39 设置行大小
6.创建、修改和删除索引
(1)创建索引
①使用命令行创建索引。
图40 创建唯一索引 ②使用OEM创建索引。
图35 索引管理界面
图36 查找索引界面
图37 创建索引界面
图38 索引选项界面
7.创建、修改、删除视图;
图39创建简单视图
图40创建基于多表的视图
图41创建基于视图的视图
图42 创建带有检查约束的视图
图43 向视图view4插入数据的错误提示
图44创建具有read only约束的视图
图45 删除视图view1数据时的错误提示
图46 创建并使用复杂视图
图47 查看视图的定义信息
图48 为视图添加唯一约束
图49 删除约束
图50 删除视图
使用OEM管理视图:
图51 视图管理界面
图52 创建视图界面
图53 查看视图界面
8.创建、修改、删除和使用序列
(1)创建序列
图54 创建序列
图55 查看序列信息 (2)修改序列
图56 修改序列
(3)使用序列
图57 使用序列
(4)删除序列
图58 删除序列
9创建和删除同义词
(1)创建同义词
图59 创建同义词
(2)删除同义词
图60 删除同义词
四、实验分析:
(1)通过本次试验,了解到Oracle数据库查询的方法,深刻理解了Oracle数据库中各种数据库对象之间的配合工作使得Oracle数据库更加安全可靠。尤其是视图使得用户操作更加方便。
(2)再插入数据后要用commit命令提交,否则插入数据会丢失
(3)在为视图添加唯一约束时出现ORA-02250;约失条件缺失或无效的问题,原因是书上的格式不对,应该为add constraint 约束名 unique(列名) disable novalidate;