ORACLE 执行计划和SQL 调优内容安排n 第一部分:背景知识n 第二部分:SQL 调优n 第三部分:工具介绍第一部分 背景知识执行计划的相关概念Rowid 的概念 n rowid 是一个伪列,既然是伪列,那么这个列就不是用户定义,而是系统自己给加上的。对每个表都有一个rowid 的伪列,但是表中并不物理存储ROWID 列的值。不过你可以像使用其它列那样使用它,但是不能删除改列,也不能对该列的值进行修改、插入。一旦一行数据插入数据库,则rowid 在该行的生命周期内是唯一的,即即使该行产生行迁移,行的rowid 也不会改变。 Recursive SQL 概念 n 有时为了执行用户发出的一个sql 语句,Oracle 必须执行一些额外的语句,我们将这些额外的语句称之为recursive calls 或recursive SQL statements 。如当一个DDL 语句发出后,ORACLE 总是隐含的发出一些recursive SQL 语句,来修改数据字典信息,以便用户可以成功的执行该DDL 语句。当需要的数据字典信息没有在共享内存中时,经常会发生Recursive calls ,