编写高效的SQL语句.doc

编写高效的SQL语句

编写高效的SQL语句 SQL语句的执行过程 选用适合的ORACLE优化器 [使用提示:与数据库管理员密切相关。在缺省情况下,ORACLE采用CHOOSE优化器,由数据库管理员定期运行analyze命令进行表分析,保证数据库中的对象统计信息的准确性。] ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 可以通过对init.ora文件中OPTIMIZER_MODE参数的设置来设置缺省的优化器,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS 。也可以在SQL句级或是会话(session)级对其进行覆盖。 为了使用基于成本的优化器(CBO, Cost-Based Optimizer) ,需要经常运行analyze 命令,以保证数据库中的对象统计信息(object statistics)的准确性。 如果数据库的优化器模式设置为选择性(CHOOSE),那么实际的优化器模式将和是否运行过analyze命令有关。如果table已经被analyze过, 优化器模式将自动成为CBO,反之,数据库将采用RULE形式的优化器。 访问Table的方式 [使用提示:与开发人员密切相关,作为OLTP系统,应尽量减少表扫描。] ORACLE 对于表的访问采用如下两种方式: a. 全表扫描 全表扫描就是顺序

文档评论(0)

1亿VIP精品文档

相关文档