第1章 大话数据库编程规范<br>1.1 编程规范概述<br>1.2 书写规范<br>1.2.1 大小写风格<br>1.2.2 缩进风格<br>1.2.3 空格及换行<br>1.2.4 其他<br>1.3 命名规范<br>1.3.1 表和字段命名规范<br>1.3.2 其他对象命名<br>1.4 变量命名<br>1.5 注释规范<br>1.6 语法规范<br>1.7 脚本规范<br>规则1.7.1 <br>规则1.7.2 <br>规则1.7.3 <br><br>第2章 Oracle开发常用工具及使用<br>2.1 AWR工具与性能优化<br>2.1.1 AWR介绍<br>2.1.2 AWR的安装与配置<br>2.1.3 AWR报表使用<br>2.1.4 分析AWR报表基本思路<br>2.1.5 案例<br>2.2 SQLTRACE/10046事件<br>2.2.1 SQLFRACE/10046事件是什么<br>2.2.2 总体流程介绍<br>2.2.3 SQLFRACE/10046事件具体使用方法<br>2.2.4 案例分析<br>2.2.5 小结<br>2.3 计时和剖析工具<br>2.3.1 PLSOLPROFI[,ER概述<br>2.3.2 剖析举例<br>2.3.3 安全性<br><br>第3章 探索MERGE方法<br>3.1 MERGE是什么<br>3.2 Oracle10g中MERGE的完善<br>3.2.1 UPDATE和INSERT动作可只出现其<br>3.2.2 可对:MERGE语句加条件<br>3.2.3 可用DELETE子句清除行<br>3.2.4 可采用无条件方式INSERT<br>3.3 MERGE误区探索<br>3.3.1 无法在源表中获得一组稳定的行<br>3.3.2 DELLETE子句的WHERE顺序必须在最后<br>3.3 ,3DELETE子句只可以删除目标表,而无法删除源表<br>3.3.4 更新同一张表的数据,需担心USING的空值<br>3.4 MERGE的巧妙运用<br><br>第4章 神秘的NULL和令人讨厌的CHAR<br>4.1 神秘的NULL<br>4.1.1 NULL概述<br>4.1.2 NULL与函数<br>4.1.3 NULL与索引<br>4.1.4 NULL与SQL<br>4.1.5 NULL与PL/SOL<br>4.1.6 再谈NULL和空字符串区别<br>4.1.7 NULL总结<br>4.2 令人讨厌的CHAR<br>4.2.1 CHAR与VARCHAR2基础<br>4.2.2 CHAR与SOL<br>4.2.3 CHAR与绑定变量<br>4.2.4 CHAR与PL/SOL<br>4.2.5 CHAR总结<br><br>第5章 报表开发之扩展GROUPBY<br>5.1 扩展GROUPBYY概述<br>5.2. ROLLUP<br>5.2.1 UNIONALL实现ROLLUP功能<br>5.2.2 GROUPBYY<br>5.2.3 部分ROLLUP分组<br>5.2.4 ROLLUP总结<br>5.3 CUBE<br>5.3.1 CUBE分组<br>5.3.2 部分CLIBE分组<br>5.3.3 CUBE总结<br>5.4 GROUPINGSETS实现小计<br>5.4.1 GROUPINGSETS分组<br>5.4.2 部分GROUPINGSETS分组<br>5.4.3 CUBE、ROLLUP作为GROLJ.PINGSETS的参数<br>5.4.4 GROUPINGSETS总结<br>5.5 组合列分组、连接分组、重复列分组<br>5.5.1 组合列分组<br>5.5.2 连接分组<br>5.5.3 重复列分组<br>5.5.4 组合列分组、连接分组、重复列分组总结<br>5.6 3个扩展分组函数:GROIJPING、GROUPINGID、GROUPID<br>5.6.1 GROUPING函数<br>5.6.2 GROUPINGID函数<br>5.6.3 GROUPID函数<br>5.6.4 扩展GROI.JPBY函数总结<br>5.7 扩展分组综合实例<br><br>第6章 探索Oracle自动类型转换<br>6.1 为什么不建议使用自动类型转换<br>6.2 自动类型转换规则<br>6.3 自动类型转换常见错误<br><br>第7章 Whereinlist问题解析<br>7.1 问题引入:动态SQL构造<br>7.2 使用正则表达式解决<br>7.3 使用常规字符串函数及动态视图<br>7.4 使用集合构造伪表<br>7.5 Whereinlist性能问题<br>7.6 Whereinlist问题总结<br><br>第8章 例说数据库表设计和大量数据处理方法<br>8.1 根据业务需求规划表结构<br>8.2 主键的确定<br>8.3 表的拆分、合并及数据的规范和反规范化<br>8.4 数据类型的选择<br>8.5 表的分区:<br>8.6 表的压缩<br>8.7 抽取数据<br>8.7.1 利用SOL*PLUS的SPOOL功能<br>8.7.2 利用UTLFILE<br>8.7.3 利用第三方工具<br>8.8 转换数据<br>8.8.1 数据的增删改<br>8.8.2 数据汇总<br>8.9 加载数据<br>8.9.1 利用SQLLDR加载<br>8.9.2 利用外部表加载<br>8.9.3 利用数据库链接加载<br>8.9.4 利用分区交换技术加载<br>8.10 逻辑导入/导出数据<br><br>第9章 数据审核<br>9.1 审核的分类<br>9.2 列审核设计<br>9.2.1 直接使用SQL语句<br>9.2.2 提高审核效率<br>9.2.3 管理审核关系<br>9.2.4 单个列的复杂审核<br>9.3 行审核设计<br>9.3.1 重码的审核<br>9.3.2 直接使用SQL语句<br>9.3.3 管理审核关系<br>9.3.4 行间包含四则运算的审核思路<br>9.3.5 更复杂的行间审核思路<br>9.4 小结<br><br>第10章 趣谈Oracle分析函数<br>10.1 概述<br>10.2 函数语法<br>10.3 函数列表<br>10.4 函数用法<br>10.4.1 最常见的分析函数应用场景<br>10.4.2.ROWS的具体用法<br>10.4.3 RANGE的具体用法<br>10.4.4 KEEP的用法<br>10.5 函数功能详解<br>……<br>第20章 动态SQL扩展<br>后记
展开