9-对象、事务及数据控制.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文档。上传文档
查看更多
第9章 高级特性: 对象、事务和数据控制 本章要点 数据库对象 什么是视图? 为什么使用视图 简单视图和复杂视图 创建视图 创建视图 创建视图指导 定义视图的查询可以采用复杂的SELECT语法,可包含连接、分组、子查询。 定义视图的查询中可以使用ORDER BY子句(低版本不行)。 如果您没有为视图中使用CHECK OPTION创建的约束命名,系统会自动为约束命名,形式为SYS_Cn。 使用OR REPLACE选项可以不用删除已经存在的视图便可更改试图的定义并重建它,或者重新授予对象权利。 创建只读视图 创建使用WITH CHECK OPTION 选项的视图 创建视图 创建复杂视图 从视图检索数据 查询视图 查询视图的名称和定义 修改视图 视图上执行DML操作的规则 在简单视图上可以执行 DML 操作 如果视图中包含以下内容则不能删除数据行: 组函数 GROUP BY 子句 DISTINCT 关键字 视图上执行DML操作的规则 WITH CHECK OPTION 子句 拒绝 DML 操作 删除视图 视图重新编译 当基表改变后,视图会失效 ORACLE会在这些视图被访问时自动重新编译 可使用ALTER VIEW对视图重新编译 ALTER VIEW可以在运行视图前发现重新编译的错误 ALTER VIEW 仅能明确地重新编译视图,要改变视图的定义,要使用CREATE OR REPLACE 视图小结 什么是序列 CREATE SEQUENCE 语句 CREATE SEQUENCE 语句 CREATE SEQUENCE 语句 创建序列 创建序列 确认序列 NEXTVAL 和 CURRVAL 伪列 使用序列 使用序列 使用序列 使用序列 修改序列 修改序列的原则 删除序列 序列小结 什么是索引 如何创建索引 创建索引 创建索引的原则 创建索引的原则 验证索引 删除索引 同义词 同义词 创建、删除同义词 创建公共同义词 公共同义词 查看同义词 系统定义同义词 ROWID伪列 ROWID伪列 控制用户访问 权限 系统权限 创建用户 用户系统权限 授予系统权限 什么是角色 创建角色和用户并为角色和用户授权 修改口令 对象权限(11种)P180-182 对象权限 对象授权 使用 WITH GRANT OPTION 和 PUBLIC 关键字 验证授权 如何回收对象权限 回收对象权限 使用序列 INSERT INTO dept(deptno, dname, loc) VALUES (dept_deptno.NEXTVAL, MARKETING, SAN DIEGO); 已创建 1 行。 上面的例子向DEPT表插入了一条新的部门记录,插入过程中使用了DEPT_DEPTNO序列来产生一个新的部门编号,您可以查看序列的当前值。 SELECT dept_deptno.CURRVAL FROM dual; CURRVAL ---------- 91 已选择 1 行。 假设现在您想新部门staff雇用员工,可以采用包含以下代码的语句不断地插入新的雇员记录: SQL INSERT INTO emp . . . 2 VALUES(emp_empno.NEXTVAL,dept_deptno.CURRVAL . . . 序列值的缓冲 在高速缓存中存放序列值可以提高对序列值的访问速度,缓存在对序列的第一次引用时便填充。每一次请求下一个序列值是从缓存中的序列得到的。当缓存中最后一个序列值被使用后,下一次请求序列值时在内存中便产生了新的一批缓冲序列值。 小心序列中的间隙 尽管序列产生器是没有间隙地产生连续的序列值,但这一操作是独立于提交或回滚操作的,如果您回滚一条使用序列的语句,序列值便会造成序列值的间隔。另一种会导致序列值间隔的原因是系统崩溃,如果在内存中存放有缓冲的序列值,这些值在系统崩溃后自动丢失。 因为序列不是和某个表绑定在一起的,同一个序列可以被多个表引用,如果出现这种情况,每个使用该序列的表中很可能使用的便是有间隙的序列值。 不使序列值增长查看下一个有效的序列值 如果序列定义时使用NOCACHE选项,便可不使序列值增长而查看下一个有效的序列值,查询方式是检索字典表USER_SEQUENCES,从LAST_NUMBER列中查看。 修改序列 如果已经达到了序列限制的最大值,序列无法再产生有效的值,并且您将得到一个错误提示序列超过最大值。为了继续使用该序列,您可以使用ALTER SEQUENCE语句对序列进行修改。 语法 ALTER SEQUENCE sequence [INCREMENT BY n] [{MAXVALUE n | NOMAXVALUE

文档评论(0)

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

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

1亿VIP精品文档

相关文档