sql语句处理分两个或三个阶段,每个语句从用户进程传给服务器进程进行分析然后执行,如果是select语句,则还需靖结果返回给用户
1、分析(parse)
分析是sql处理的第一步。主要进行:
a、检查语法和根据字典来检查表名、列名。
b、确定用户执行语句权限
c、为语句确定最优执行计划
d、从sql区中找出语句
2、执行(excute)
oracle执行阶段执行的是被分析过得语句。对于update、delete语句、oracle先锁住有关的行。oracle还要查找数据是否在数据缓冲区。如果不在,还得从数据文件将数据读到数据缓冲区来。
3、检索(fetch)
如果是select语句,还要进行检索操作。执行结束、将数据返回给用户
4、select语句处理
一般select语句处理要经过一下步骤:
a、建立光标
b、分析语句
c、定义输出:指定位置、类型、结果集的数据类型
d、绑定变量:如果查询使用变量的话,oracle就要知道变量的值
e、是否能并行运行
f、执行查询
g、检索出数据
h、关闭光标