第10章其他数据库对象.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十章 其他数据库对象 东软IT人才实训中心 本章要点 视图 序列 索引 同义词 视图 视图是虚表。是一个命名的查询,用于改变基表数据的显示,简化查询。视图的访问方式与表的访问方式相同。 视图的好处: 可以限制对基表数据的访问,只允许用户通过视图看到表中的一部分数据 可以使复杂的查询变的简单 提供了数据的独立性,用户并不知道数据来自于何处 提供了对相同数据的不同显示 简单视图和复杂视图 简单视图:只涉及到一个表,而且SELECT子句中不包含函数表达式列(包括单行函数和分组函数)。 复杂视图:涉及到一个或多个表,SELECT子句中包含函数表达式列(单行函数或分组函数)。 简单视图和复杂视图 特征 简单视图 复杂视图 基表数量 一个 一个或多个 包含函数 没有 有 包含数据组 没有 有 通过视图实现DML操作 可以 不一定 创建视图 在子查询中可以加入复杂的SELECT. 子查询中能使用ORDER BY子句,如果想排序,可以在执行查询视图时使用。 创建视图 OR REPLACE:如果所创建的视图已经存在,Oracle会自动重建该试图 FORCE:不管基表是否存在,Oracle都会创建该视图 NOFORCE:只有基表都存在,Oracle才会创建该视图 view:视图的名称 alias:为视图所产生的列定义别名,别名的数量必须和视图所产生列的数量相等 subquery:一条完整的SELECT语句,在该语句中同样可以定义别名 WITH CHECK OPTION:通过视图做DML操作时,必须要保证所插入或修改或删除的数据行必须满足视图所定义的约束,也就是说插入或更新后的结果必须仍然可以通过该视图查询得到 。 constraint:CHECK OPTION中的约束名 WITH READ ONLY:确保在该视图上不能进行任何DML操作,默认可以通过视图执行DML操作。 创建视图示例 例10-3 查询50部门的员工的年薪的视图 通过视图执行DML操作 创建一个测试用表EMP_DML 创建视图v_emp1,是个简单视图。 通过视图进行DML操作。 不能通过视图删除记录的条件 视图中包含分组函数 视图中含有GROUP BY子句 视图中含有DISTINCT关键字 视图中包含伪列ROWNUM 不能通过视图修改记录的条件 视图中包含分组函数 视图中含有GROUP BY子句 视图中含有DISTINCT关键字 视图中包含伪列ROWNUM 视图中要修改的列包含表达式 不能通过视图添加记录的条件 视图中包含分组函数 视图中含有GROUP BY子句 视图中含有DISTINCT关键字 视图中包含伪列ROWNUM 视图中要修改的列包含表达式 视图中没有表的NOT NULL列。 WITH CHECK OPTION WITH CHECK OPTION实质是给视图加一个“CHECK”约束,该CHECK约束的条件就是视图中的子查询的WHERE条件,以后如果想通过该视图执行DML操作,不允许违反该CHECK约束。 WITH CHECK OPTION示例 例10-6 WITH CHECK OPTION例子 该约束的条件为视图中WHERE条件,即“employee_id=141”,如视图v_emp3想执行DML操作,不能把记录的employee_id字段值改成其他编号(只能是141),如果违反了,执行出错,会出现错误提示。 WITH READ ONLY WITH READ ONLY的视图是只读的,不允许通过该视图执行DML语句。 例10-7 WITH READ ONLY例子,创建一个视图v_emp4 通过该视图进行更新操作 删除视图 删除视图的语法 内联视图 内联视图(Inline View),是一个在SQL语句内可以使用的子查询的别名。是一个命名的SQL语句,但不是真正的数据库的视图对象。最常见的内联视图的例子就是主查询中的FROM子句中,包含的是一个命名的子查询。 例10-8 内联视图的例子 Top-N分析 Top-N查询主要是实现查找表中最大或最小的N条记录功能。 Top-N分析语法: Top-N分析 按照员工工资从高到底分页SQL语句 select * from( select * from (select * from employees order by salary desc) where rownum=每页的记录数*目标页数 order by salary) where rownum=每页的记录数 order by salary desc; Top-N分析(续) ROWNUM是在记录输出时才一步一步产生的

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档