码迷,mamicode.com
首页 > 数据库 > 详细

Oracle 10G select工作原理

时间:2015-02-11 16:00:36      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:

数据库查询语句内部执行过程

select * from  table

步骤 

分析阶段(parse)

1、共享池库高速缓存有没有该语句。如果有直接返回结果。

2、语法分析sql语句是否正确进行下一步分析。

3、检查表是否存在。(对象解析,查找数据字典表)

4、翻译*成为所有字段。检查字段是否正确。

5、获得对象解析锁,表结构锁住,防止其他用户对表结构进行改变。

6、检查用户权限够不够。

7、由计划器产生执行计划放到库高速缓存区里(二进制执行代码)。

 

执行阶段(execute)

1、看数据库高速缓冲区是否存在,如果存在则提取。

2、如果不存在则从数据文件中读到数据缓冲区中。

 

提取阶段(fetch)

1、从数据库缓冲区高速缓存中读取数据给用户。

 

from:eesama

Oracle 10G select工作原理

标签:

原文地址:http://www.cnblogs.com/chaizp/p/4286049.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!