Oracle10g中一个关于绑定变量和非绑定变量的测试对比

首先创建测试表并记录解析统计数据:

创新互联成立于2013年,先为孟连等服务建站,孟连等地企业,进行企业商务咨询服务。为孟连企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

 

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

进行循环插入数据,以下代码并未使用绑定变量:

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

发现在增加了11个硬解析.

查询v$sqlarea视图,可以找到这些不能共享的SQL,注意每条SQL都只执行了一次,这些SQL不仅解析要消耗密集的SQL资源,也要占用共享内存存储这些不同的SQL代码:

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

 

重建测试表,进行第二次测试:

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

这一次使用绑定变量,同样10次数据插入:

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

 

现在看一下SQL解析的统计数据库,硬解析由原来的145增加到147.

对于该SQL,共享池中只存在一份,解析一次,执行10次,这就是绑定变量的优势所在:

Oracle 10g中一个关于绑定变量和非绑定变量的测试对比

从Oracle从8.1.6开始提供了一个新的初始化参数用以在Server端进行强制变量绑定,这个参数就是cursor_sharing。最初这个参数有两个可选设置:exactforce


分享文章:Oracle10g中一个关于绑定变量和非绑定变量的测试对比
链接地址:http://csruizhi.cn/article/ijchpj.html

其他资讯

Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号
友情链接: 网站制作 企业网站设计 温江网站设计 营销型网站建设 成都网站建设 成都网站设计 网站制作 营销网站建设 营销型网站建设 成都网站制作 教育网站设计方案 成都网站设计 成都网站设计 四川成都网站设计 成都定制网站建设 手机网站制作 成都网站设计 企业网站设计 成都网站制作公司 成都网站建设 成都网站建设 定制网站设计