9-对象、事务和数据控制..ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
9-对象、事务和数据控制.

数据库开发技术 第9章 高级特性: 对象、事务和数据控制 本章要点 学习某些Oracle对象以及它们的使用; 使用语法来创建、使用、修改和删除视图、序列、同义词和索引; 讨论事务控制的优点; 介绍事务控制中所使用的用户、角色和权限; 数据库对象 什么是视图? 为什么使用视图 限制对数据库的访问 容易实现复杂的查询 维护数据的独立性 对于相同的数据可以产生不同的视图 简单视图和复杂视图 特征 简单视图 复杂视图 基表数量 一个 一个或多个 包含分组函数 没有 可能有 包含分组的数据 没有 可能有 通过视图实现DML操作 可以 不一定 创建视图 在CREATE VIEW语句中嵌入一子查询 子查询可以采用复杂的SELECT语法形式 子查询中不能使用ORDER BY子句 FORCE:不管基表是否存在,也强制创建该视图 WITH CHECK OPTION:表示进行视图插入或修改时必须满足子查询的约束条件。后面的约束名是该约束条件的名字。 创建视图 创建视图 EMPVU10,该视图仅包含10部门雇员的细节信息。 创建只读视图 创建emp表的经理视图。 创建使用WITH CHECK OPTION 选项的视图 创建emp表的经理视图。 创建视图 创建视图时在内部查询中使用列的别名 要从视图中选择列时必须使用内部查询中所使用的列的别名 创建复杂视图 创建一个基于两个表并且含有组函数的复杂视图。 从视图检索数据 查询视图 查询视图的名称和定义 修改视图 用 CREATE OR REPLACE VIEW子句修改视图empvu10,为每个列添加别名。 CREATE VIEW子句中别名的顺序必须和内部查询中的列的顺序一一对应 视图上执行DML操作的规则 在简单视图上可以执行 DML 操作 如果视图中包含以下内容则不能删除数据行: Group 函数 GROUP BY 子句 DISTINCT 关键字 视图上执行DML操作的规则 如果视图包含以下内容,则不能实现对数据的修改: 组函数、GROUP BY子句,DISTINCT关键字。 使用表达式定义的列(或称导出列) ROWNUM 伪列 如果是以下情况不能插入数据: : 上面提到的各种情况 基表中未在视图中选择的其它列定义为非空并且没有默认值。 WITH CHECK OPTION 子句 如果要确保在视图上执行的DML操作仅限于一定的范围,便可使用WITH CHECK OPTION子句。 拒绝 DML 操作 在视图定义时使用WITH READ ONLY选项可以确保不能对视图执行DML操作。 删除视图 删除视图并不会删除数据因为视图是基于数据库中的基表。 视图小结 视图是基于一个或多个表或视图的逻辑表,使用视图具有以下优点: 限制对数据库的访问 简化查询 维护数据的独立性 对相同的数据可以建立不同的视图 可以删除视图而不影响数据 什么是序列 可为表中的记录自动产生序列数值,既可以是惟一的,又可以是循环的,如果是用于主键列,则必须是惟一的 是一个可共享的对象 典型应用是创建主键值,用于标识记录的唯一性 当序列驻留在缓存中可以有效地提高序列的访问效率 序列数值的产生及存储与表无关,因此相同的序列可以用于多个表。 CREATE SEQUENCE 语句 定义序列,自动产生等间隔的连续数值 CREATE SEQUENCE 语句 INCREMENT BY: 定义序列的步长,如果省略,则默认为1,如果出现负值,则代表序列的值是按照此步长递减的。 START WITH: 定义序列的初始值(即产生的第一个值),默认为1。 MAXVALUE: 定义序列生成器能产生的最大值。选项NOMAXVALUE是默认选项,代表没有最大值定义,这时对于递增序列,系统能够产生的最大值是10的27次方;对于递减序列,最大值是-1。 CREATE SEQUENCE 语句 MINVALUE n 指定最小序列值 NOMINVALUE 指定升序最小序列值为1,而降序最小序列值为负10的26次方,这是默认选项 CYCLE | NOCYCLE 指定序列值在达到最大值或最小值之后继续产生序列值,NOCYLE表示不再产生,NOCYLE是默认选项。 CACHE n | NOCACHE 指定序列值被Oracle服务器预先分配并存储在内存中,NOCACHE表示不预先分配并存储,NOCACHE是默认选项 ORDER | NOORDER 指定按(或不按)时间先后顺序产生编号,这一点对于使用序列产生主键值非常重要,这个选项是唯一关系到并行服务程序的选项。 创建序列 创建名称为DEPT_DEPTNO的序列,将其作为DEPT表的主键 没有使用CYCLE选项 创建序列 创建名称为emp_empno的序列,将其作为EMP表的主键 使用

文档评论(0)

2017meng + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档