Oracle执行SQL查询语句的步骤
1、SQL正文放入共享池(shared pool)的库缓存(library cache)。
2、检查是否有相同的SQL正文,没有就进行以下编译处理,否则跳过。
1)语法检查
2)通过数据字典检查表和列的定义
3)对所操作的对象加编译锁,防止编译期间的对象定义被改变
4)检查用户权限
5)生成执行计划
6)将编译后的代码和执行计划放入共享SQL区
3、执行
由服务器进程执行SQL语句。
4、提取数据
由服务器进程选择所需的数据行,需要时排序(PGA中),返回给用户进程。