基于ORACLE的SQL语句优化

时间:2024-01-25 点赞:49004 浏览:97060 作者原创标记本站原创

本文是一篇数据库论文范文,数据库方面毕业论文格式范文,关于基于ORACLE的SQL语句优化相关硕士学位毕业论文范文。适合数据库及语句及参考文献方面的的大学硕士和本科毕业论文以及数据库相关开题报告范文和职称论文写作参考文献资料下载。

摘 要本文从ORACLE内存角度简单讨论了SQL语句的优化方法.SQL语句由于其简单和容易上手致使大家对它的研究不对,其实无论是DBA还是前台程序员都应该有一些书写高效SQL语句的经验,这对于应用设计和系统日常维护都有很大帮助.

关 键 词SQL语句优化绑定变量物化视图

中图分类号:TP312文献标识码:A

SQL语言由IBM实验室的DonaldChamberlin及其同事在1974年定义,被称为结构化查询语言(StructuredQueryLanguage),现在SQL语言已经形成了标准的应用和开发体系.

1SQL语句的使用

虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括SELECT,INSERT,UPDATE,DELETE以及MERGE在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作.

SELECT查询语句用来从一个或多个表中或者其他数据库对象中提取数据.SELECT查询的一般格式是

5select{[distinct|all]columns|*}

1from{tables|views|otherselect}

2whereconditions

3groupbycolumns

4hingconditions

6orderbycolumns;

其中,每行代码前的数字表示了SELECT语句在ORACLE执行顺序.在执行查询语句时是由ORACLE的基于成本的优化器(cost-basedoptimizer,CBO)来负责编译的,因此SELECT查询语句的执行顺序和我们的逻辑思维有所不同.从执行顺序可以直观的看出,减少FROM语句涉及到的数据源数量,可以大幅减少数据访问量,增加SELECT查询语句的执行速度.

2硬解析与软解析

为了不重复解析相同的语句,在每一次执行SQL语句前ORACLE会去检查内存中是不是存在相同的语句.在第一次解析SQL语句之后,ORACLE将SQL语句存放在系统全局内存区域SGA中.因此,当用户执行一个SQL语句时,如果它和之前执行过得语句完全相同,ORACLE会将取回之前的解析信息并重用,这种解析类型被称为软解析.相反的,如果之前没有执行过完全相同的语句,ORACLE会将它解析执行并把解析信息存入SGA中便于以后重用,这种解析类型被称为硬解析.不难看出,当数据块在内存中缓存时的访问速度要大于通过OS获取数据块的访问速度.

3绑定变量的使用

一个硬解析不仅仅耗费大量的系统资源,更重要的是会占据重要的们闩(latch)资源.当一个SQL语句提交后,ORACLE会首先检查一下共享缓冲池(sharedpool)里有没有与之完全相同的语句,如果有的话只须执行软解析即可,否则就得进行硬解析.有以下两条SQL语句:


SQL>select*fromempwheredeptno等于10;

SQL>SELECT*FROMEMPWHEREDEPTNO等于10;

这两条语句返回的结果集是完全相同的,也就是说对于用户来说这两条语句执行结果是相同的.现在来对v$sql表1进行查询.

从返回的结果可以发现,尽管这两条语句的结果是相同的,但是ORACLE认为它们是不同的.这是由于在执行SQL语句时,ORACLE首先将该语句字符的散列值作为它存放在SGA中的主键.当执行其他语句时,ORACLE会将执行语句的散列值与内存中现有的散列值一一比较.在执行字符转换散列值时,大写字母与小写字母产生的散列值是不同的.当使用绑定变量时,即使用户改变了绑定变量的值,ORACLE还是可以共享这个语句.

相关论文

SQL查询优化技术

本文是一篇数据库论文范文,数据库方面在职研究生毕业论文,关于SQL查询优化技术相关硕士学位毕业论文范文。适合数据库及语句及索引方面的的。

会计专业课程案例教学优化

本文是一篇教学法论文范文,教学法类有关毕业论文范文,关于会计专业课程案例教学优化相关毕业论文格式范文。适合教学法及案例及高质量方面的。

中职教育会计教学现状其优化措施

本论文是一篇中职教育方面银行会计学论文,关于中职教育会计教学现状其优化措施相关毕业论文格式范文。免费优秀的关于中职教育及电算化及会。

巧用多媒体优化英语教学

关于多媒体及自主学习及多媒体技术方面的免费优秀学术论文范文,关于多媒体方面教育教学改革论文,关于巧用多媒体优化英语教学相关论文范文。

数学算法对计算机编程的优化

本文是一篇计算机编程论文范文,关于计算机编程毕业论文格式,关于数学算法对计算机编程的优化相关研究生毕业论文开题报告范文。适合计算机编。

电力企业文书档案立卷归档的与优化

本文是一篇文书档案论文范文,文书档案有关本科毕业论文范文,关于电力企业文书档案立卷归档的与优化相关函授毕业论文范文。适合文书档案及电。

优化企业会计管理

本文是一篇会计管理论文范文,会计管理类有关毕业论文格式,关于优化企业会计管理相关毕业论文格式模板范文。适合会计管理及财务管理及会计信。