开发工具:
文件大小: 4mb
下载次数: 0
上传时间: 2014-08-08
详细说明: 目 录 第1章 开发成功的Oracle应用程序 1 1.1 我的方法 2 1.2 黑盒子方法 3 1.3 如何开发(如何妨碍开发)数据库应用程序 5 1.3.1 理解Oracle的体系结构 6 1.3.2 理解并行控制 10 1.3.3 与数据库无关 17 1.3.4 如何使它运行更快 27 1.3.5 数据库管理员与开发人员之间的关系 28 1.4 小结 29 第2章 体系结构 30 2.1 服务器 30 2.2 文件 36 2.2.1 参数文件 37 2.2.2 数据文件 39 2.2.3 临时文件 41 2.2.4 控制文件 42 2.2.5 重做日志文件 42 2.2.6 文件总结 46 2.3 内存结构 46 2.3.1 PGA和UGA 46 2.3.2 SGA 51 2.3.3 内存结构总结 60 2.4 进程 61 2.4.1 服务器进程 61 2.4.2 后台进程 65 2.4.3 从属进程 72 2.5 小结 73 第3章 封锁和并行性 74 3.1 锁定 74 3.2 封锁问题 76 3.2.1 丢失更新 76 3.2.2 阻塞 79 3.2.3 死锁 80 3.2.4 锁定扩大 84 3.3 锁定类型 84 3.3.1 DML锁定 85 3.3.2 DDL锁定 91 3.3.3 锁存器和内部锁定(入队) 94 3.3.4 手动封锁和用户自定义锁定 95 3.4 什么是并行控制 96 3.4.1 事务隔离等级 96 3.4.2 READ UNCOMMITTED隔离等级 97 3.4.3 READ COMMITTED隔离等级 99 3.4.4 REPEATABLE READ隔离等级 100 3.4.5 SERIALIZABLE隔离等级 103 3.4.6 只读事务 104 3.5 小结 105 第4章 事务 106 4.1 事务控制语句 106 4.2 完整性约束和事务 111 4.3 处理事务的不良习惯 114 4.4 分布式事务 119 4.5 重做和回滚 121 4.6 小结 124 第5章 重做和回滚 125 5.1 重做 125 5.1.1 COMMIT 126 5.1.2 回滚 131 5.1.3 产生多少重做 132 5.1.4 能够不让重做日志产生吗 142 5.1.5 不能分配一个新日志 145 5.1.6 块清除 146 5.1.7 日志竞争 149 5.1.8 临时表和重做/回滚 151 5.1.9 分析重做 153 5.2 回滚 154 5.2.1 什么产生最多/最少的撤消 154 5.2.2 SET TRANSACTION 154 5.2.3 “ORA-01555:Snapshot too old” 155 5.3 小结 164 第6章 数据库表 166 6.1 表的类型 166 6.2 术语 167 6.2.1 高水标记 167 6.2.2 自由列表 168 6.2.3 PCTFREE 和PCTUSED 170 6.2.4 INITIAL, NEXT和PCTINCREASE 176 6.2.5 MINEXTENTS 和 MAXEXTENTS 177 6.2.6 LOGGING 和 NOLOGGING 177 6.2.7 INITRANS 和MAXTRANS 177 6.3 堆组织表 177 6.4 索引组织表 181 6.5 索引组织表总结 194 6.6 索引聚簇表 194 6.7 索引聚簇表总结 201 6.8 散列聚簇表 201 6.9 散列聚簇总结 210 6.10 嵌套表 211 6.10.1 嵌套表语法 211 6.10.2 嵌套表存储 219 6.11 嵌套表总结 222 6.12 临时表 222 6.13 对象表 230 6.14 对象表总结 238 6.15 小结 238 第7章 索引 239 7.1 Oracle索引概述 239 7.2 B*Tree 索引 240 7.2.1 反向码索引 244 7.2.2 降序索引 245 7.2.3 应该在何时使用 B*Tree 索引 247 7.3 B*Trees 总结 254 7.4 位图索引 254 7.5 位图索引总结 257 7.6 基于函数的索引 257 7.6.1 重要的实现细节 257 7.6.2 基于函数索引的例子 258 7.6.3 警告 266 7.7 基于函数的索引总结 267 7.8 应用程序域索引 267 7.9 应用程序域索引总结 268 7.10 关于索引常见问题解答 268 7.10.1 索引能在视图中使用吗 269 7.10.2 索引和空 269 7.10.3 外码上的索引 272 7.10.4 为什么索引没有使用 273 7.10.5 索引使用了吗 278 7.10.6 神话:在索引中空间从来不会重用 278 7.10.7 神话:大部分有差别的元素应该在前边 281 7.11 小结 285 第8章 导入和导出 286 8.1 例子 286 8.2 为什么可以使用IMP 和EXP 287 8.2.1 检测冲突 288 8.2.2 抽取 DDL 288 8.2.3 克隆模式 288 8.2.4 传输表空间 288 8.2.5 重构实例 289 8.2.6 在平台之间复制数据 289 8.3 IMP/EXP的工作原理 289 8.3.1 选项 289 8.3.2 大量导出 293 8.3.3 数据子集 297 8.3.4 数据传输 297 8.3.5 获得DDL 303 8.3.6 备份和恢复 309 8.3.7 IMP/EXP不(再)是一个重新组织工具 310 8.3.8 导入到不同结构 310 8.3.9 直接路径导出 315 8.4 警告和错误 315 8.4.1 克隆 315 8.4.2 跨版本使用IMP/EXP 323 8.4.3 索引哪里去了 324 8.4.4 命名与默认名的约束 326 8.4.5 NLS问题 330 8.4.6 表跨越多个表空间 332 8.5 小结 336 第9章 数据装载 337 9.1 SQL*LOADER简介 337 9.2 如何装载 343 9.2.1 装载定界数据 343 9.2.2 装载固定格式的数据 346 9.2.3 装载日期 348 9.2.4 利用序列和其他函数装载数据 349 9.2.5 更新现有的行和插入新的行 355 9.2.6 装载报表类型的输入数据 357 9.2.7 装载一个文件到一个长RAW或长字段中 360 9.2.8 装载嵌入换行符的数据 361 9.2.9 卸载数据 371 9.2.10 装载LOB 382 9.2.11 用SQLLDR装载VARRAYS/嵌套表 392 9.2.12 在存储过程中调用SQLLDR 395 9.3 警告 399 9.3.1 不能选择欲使用的回滚段 399 9.3.2 TRUNCATE的不同作用 400 9.3.3 SQLLDR 默认为 CHAR(255) 400 9.3.4 命令行取代控制文件 400 9.4 小结 400 第10章 优化策略与工具 401 10.1 标识问题 401 10.2 我的方法 402 10.3 绑定变量与分析 407 10.4 绑定变量与分析总结 423 10.5 SQL_TRACE、TIMED_STATISTICS与TKPROF 423 10.5.1 设置跟踪 424 10.5.2 使用并解释TKPROF输出 426 10.5.3 使用并说明原始跟踪文件 435 10.6 SQL_TRACE、TIMED_STATISTICS与TKPROF总结 446 10.7 DBMS_PROFILER 447 10.8 说明 447 10.9 StatsPack 449 10.9.1 安装StatsPack 449 10.9.2 StatsPack 总结 467 10.10 V$ 表 467 10.10.1 V$EVENT_NAME 467 10.10.2 V$FILESTAT和V$TEMPSTAT 468 10.10.3 V$LOCK 468 10.10.4 V$MYSTAT 468 10.10.5 V$OPEN_CURSOR 469 10.10.6 V$PARAMETER 471 10.10.7 V$SESSION 471 10.10.8 V$SESSION_EVENT 474 10.10.9 V$SESSION_LONGOPS 474 10.10.10 V$SESSION_WAIT 474 10.10.11 V$SESSTAT 474 10.10.12 V$SESS_IO 474 10.10.13 V$SQL, V$SQLAREA 474 10.10.14 V$STATNAME 475 10.10.15 V$SYSSTAT 475 10.10.16 V$SYSTEM_EVENT 475 10.11 小结 475 第11章 优化器方案稳定性 476 11.1 概述 476 11.2 优化器方案稳定性的使用 479 11.2.1 实现优化的方法 480 11.2.2 开发工具 484 11.2.3 查看所使用的索引 486 11.2.4 查看应用程序执行的是什么SQL语句 486 11.3 优化器方案稳定性是如何工作的 486 11.4 创建存储大纲 489 11.4.1 存储大纲需要具备的权限 489 11.4.2 使用DDL 489 11.4.3 使用ALTER SESSION 490 11.5 OUTLN用户 491 11.6 在数据库之间移动大纲 492 11.7 得到正确的大纲 492 11.8 管理大纲 495 11.8.1 通过DDL管理大纲 495 11.8.2 OUTLN_PKG程序包 498 11.9 警告 501 11.9.1 大纲表的命名和使用场合 501 11.9.2 ALTER SESSION的问题 503 11.9.3 Drop User不删除大纲 503 11.9.4 “CURSOR_SHARING = FORCE”与大纲 503 11.9.5 大纲使用简单的文本匹配 504 11.9.6 默认情况下大纲在SYSTEM 表空间中 505 11.9.7 OR扩展 505 11.9.8 性能 506 11.9.9 大纲的名称空间是全局变量 510 11.10 可能遇到的错误 511 11.11 小结 512 第12章 分析函数 513 12.1 范例 513 12.2 分析函数是如何工作的 517 12.2.1 语法 517 12.2.2 分析函数 531 12.3 范例 533 12.3.1 前N个记录的查询 534 12.3.2 Pivot(行列转换)查询 544 12.3.3 访问当前行周围的行 552 12.4 警告 556 12.4.1 PL/SQL与分析函数 556 12.4.2 Where子句中的分析函数 558 12.4.3 NULL与排序 559 12.4.4 性能 561 12.5 小结 561 第13章 物化视图 562 13.1 简短历史 562 13.2 运行范例需要什么 563 13.3 例子 563 13.4 物化视图的使用 570 13.5 物化视图如何工作 571 13.5.1 设置 571 13.5.2 内部机制 572 13.6 确保视图可以使用 574 13.6.1 约束 574 13.6.2 维数 579 13.7 DBMS_OLAP 588 13.7.1 估计大小 589 13.7.2 维的验证 590 13.7.3 推荐物化视图 592 13.8 警告 594 13.8.1 物化视图不是为OLTP系统设计的 594 13.8.2 查询重写的完整性 595 13.9 小结 595 第14章 分区 596 14.1 分区的使用 596 14.1.1 提高可用性 596 14.1.2 减轻管理负担 598 14.1.3 增强DML和查询的性能 599 14.2 分区如何工作 601 14.2.1 表分区模式 601 14.2.2 分区索引 606 14.3 小结 625 第15章 自治事务 626 15.1 范例 626 15.2 为什么使用自治事务 628 15.2.1 不能回滚的审计 628 15.2.2 避免出现变异表的方法 631 15.2.3 在触发器中执行DDL语句 633 15.2.4 写入数据库 638 15.2.5 开发更多的模块化代码 647 15.3 它自治事务如何工作 648 15.3.1 事务控制 648 15.3.2 作用范围 650 15.3.3 结束自治事务 656 15.3.4 保存点 657 15.4 警告 659 15.4.1 非分布式事务 659 15.4.2 只有PL/SQL 659 15.4.3 整个事务回滚 659 15.4.4 事务级临时表 662 15.4.5 变异表 663 15.5 可能遇到的错误 665 15.6 小结 666 第16章 动态SQL 668 16.1 动态SQL与静态SQL 668 16.2 为什么使用动态SQL 670 16.3 如何使用动态SQL 672 16.3.1 DBMS_SQL 672 16.3.2 本地动态SQL 679 16.3.3 DBMS_SQL与本地动态SQL 683 16.4 警告 707 16.4.1 依赖链中断 708 16.4.2 代码更脆弱 709 16.4.3 更难以优化 709 16.5 小结 709 第17章 interMedia 710 17.1 简要历史 710 17.2 interMedia Text的用途 711 17.2.1 搜索文本 711 17.2.2 管理多种文档 714 17.2.3 从多种数据源中对文本建立索引 714 17.2.4 它毕竟是一个Oracle数据库 717 17.2.5 生成主题 718 17.2.6 搜索XML应用程序 720 17.3 interMedia Text如何工作 720 17.3.1 interMedia Text索引 724 17.3.2 关于ABOUT操作符 727 17.3.3 节搜索 728 17.4 警告 734 17.4.1 inter Media Text不是文档管理解决方案 734 17.4.2 索引同步 734 17.4.3 在数据库外部索引信息 735 17.4.4 文档服务 736 17.4.5 目录索引 736 17.5 可能遇到的错误 738 17.5.1 过期索引 738 17.5.2 外部过程错误 739 17.6 展望 739 17.7 小结 740 第18章 基于C的外部过程 741 18.1 何时使用外部过程 741 18.2 如何实现外部过程 742 18.3 配置服务器 744 18.3.1 验证外部过程程序 746 18.3.2 验证数据库环境 747 18.3.3 验证监听器 748 18.4 第一个测试 748 18.4.1 编译extproc.c代码 749 18.4.2 建立SCOTT/TIGER账户 750 18.4.3 创建demolib库 750 18.4.4 安装和运行 751 18.5 第一个外部过程 752 18.5.1 封装函数 753 18.5.2 C程序代码 763 18.5.3 建立外部过程 788 18.5.4 安装和运行 791 18.6 LOB到文件的外部过程 (LOB_IO) 793 18.6.1 LOB_IO调用规范 793 18.6.2 LOB_IO的Pro*C程序代码 795 18.6.3 建立外部过程 799 18.6.4 LOB_IO的安装和使用 802 18.7 错误信息 807 18.8 小结 814 第19章 Java存储过程 815 19.1 为什么使用Java存储过程 815 19.2 Java存储过程如何工作 816 19.2.1 传递数据 820 19.2.2 范例 830 19.3 错误信息 837 19.3.1 ORA-29549 Java会话状态被清除 837 19.3.2 权限错误 838 19.3.3 ORA-29531 类Y中没有方法X 838 19.4 小结 839 第20章 使用对象关系特性 840 20.1 使用对象关系特性的原因 840 20.2 对象关系特性如何工作 841 20.3 在系统中增加数据类型 841 20.4 增加数据类型总结 856 20.5 利用类型扩展PL/SQL 856 20.5.1 创建新的PL/SQL数据类型 856 20.5.2 集合的独特应用 868 20.6 利用数据类型扩展PL/SQL总结 873 20.7 对象关系视图 873 20.7.1 数据类型 874 20.7.2 O-R视图 874 20.8 小结 887 第21章 精细存取控制 889 21.1 范例 889 21.2 为什么使用这一特性 890 21.2.1 易于维护 890 21.2.2 在服务器上执行 891 21.2.3 避免共享用户账户 892 21.2.4 支持共享用户账户 892 21.2.5 在ASP中放置应用程序 892 21.3 该特性是如何工作的 893 21.3.1 范例1:实施安全策略 894 21.3.2 范例2:使用应用程序上下文 899 21.4 警告 918 21.4.1 参照完整性 918 21.4.2 游标隐藏 923 21.4.3 导出/导入 929 21.4.4 调试 933 21.5 错误信息 934 21.6 小结 938 第22章 多层身份验证 939 22.1 为什么使用多层身份验证 939 22.2 多层身份验证机制 941 22.3 审计代理账户 951 22.4 警告 953 22.5 小结 954 第23章 调用者权限和定义者权限 955 23.1 范例 955 23.2 何时使用调用者权限 958 23.2.1 开发通用实用程序 958 23.2.2 数据字典应用程序 963 23.2.3 通用对象类型 965 23.2.4 实现您自己的访问控制 966 23.3 何时使用定义者权限 969 23.3.1 性能和可伸缩性 969 23.3.2 安全性 969 23.4 调用者权限和定义者权限如何工作 970 23.4.1 定义者权限 970 23.4.2 调用者权限 975 23.5 警告 985 23.5.1 调用者权限和共享池利用率 985 23.5.2 性能 989 23.5.3 程序必须在错误处理上更健壮 991 23.5.4 使用SELECT *的副作用 993 23.5.5 注意“隐藏”列 994 23.5.6 Java和调用者权限 996 23.6 错误信息 1002 23.7 小结 1002 附录A 必须提供的程序包 1004 A.1 DBMS_ALERT 和DBMS_PIPE 1007 A.2 DBMS_APPLICATION_INFO 1017 A.3 DBMS_JAVA 1025 A.4 DBMS_JOB 1033 A.5 DBMS_LOB 1047 A.6 DBMS_LOCK 1066 A.7 DBMS_LOGMNR 1071 A.8 DBMS_OBFUSCATION_TOOLKIT 1097 A.9 DBMS_OUTPUT 1119 A.10 DBMS_PROFILER 1136 A.11 DBMS_UTILITY 1148 A.12 UTL_FILE 1177 A.13 UTL_HTTP 1185 A.14 UTL_RAW 1206 A.15 UTL_SMTP和发送邮件 1208 A.16 UTL_TCP 1221 附录B 技术支持、勘误表和p2p.wrox.com网站 1236 B.1 p2p.wrox.com网站的在线论坛 1236 B.2 在www.wrox.com网站在线检查勘误表 1237 B.3 如何确切地告诉我们您的想法 1239 ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.