oracle绑定变量及举例

oracle绑定变量及举例

ID:17898483

大小:21.74 KB

页数:14页

时间:2018-09-09

oracle绑定变量及举例_第1页
oracle绑定变量及举例_第2页
oracle绑定变量及举例_第3页
oracle绑定变量及举例_第4页
oracle绑定变量及举例_第5页
资源描述:

《oracle绑定变量及举例》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1.什么是绑定变量,及举例什么是绑定变量,问什么要进行绑定变量?Sql语句的执行要经过解析、执行、提取等几个阶段,其中解析最消耗资源,解析的过程中要进行语法、语义和权限的检查,如果这些检查都通过了,则进行执行,执行完成之后将sql语句的执行计划存储在共享池中,如果下一次有相同的sql语句要执行,则不需要解析,直接按照已经存在的执行计划进行执行,就可以节省资源当多个sql语句执行的时候大多数情况下是条件相同,只是条件里面的值不同。例如:A用户:select*fromtwhereID=1B用户:select*fromtwhereID=2绑定变

2、量就是将条件谓词中不同的值保存在一个中间变量中,Oracle对用户每次发起的sql语句做hash运算时,都产生相同的hash值,使用相同的执行计划,作为一个sql语句来执行。Select*fromtwhereID=:X下面是绑定变量和非绑定变量的性能比较1)绑定变量执行altersessionsetsql_trace=true;beginforxin1..10000loopexecuteimmediate'select*fromtwhereobject_name=:x'usingx;endloop;end;altersessionsets

3、ql_trace=false;trace文件中的执行计划和统计信息SQLID:gdp68zfsdqrbcPlanHash:1601196873select*fromtwhereobject_name=:xcallcountcpuelapseddiskquerycurrentrows-----------------------------------------------------------------------Parse10.000.000000Execute100000.150.170000Fetch00.000.000000

4、-----------------------------------------------------------------------total100010.150.170000Missesinlibrarycacheduringparse:0Optimizermode:ALL_ROWSParsinguserid:5(SYSTEM)(recursivedepth:1)RowsRowSourceOperation----------------------------------------------------------0TA

5、BLEACCESSFULLT(cr=0pr=0pw=0time=0uscost=301size=196card=2)RowsExecutionPlan----------------------------------------------------------0SELECTSTATEMENTMODE:ALL_ROWS0TABLEACCESSMODE:ANALYZED(FULL)OF'T'(TABLE)*******************************************************************

6、*************OVERALLTOTALSFORALLNON-RECURSIVESTATEMENTScallcountcpuelapseddiskquerycurrentrows-----------------------------------------------------------------------Parse20.000.000000Execute31.281.250001Fetch00.000.000000---------------------------------------------------

7、--------------------total51.281.260001Missesinlibrarycacheduringparse:2Missesinlibrarycacheduringexecute:1OVERALLTOTALSFORALLRECURSIVESTATEMENTScallcountcpuelapseddiskquerycurrentrows-----------------------------------------------------------------------Parse10.000.000000

8、Execute100000.150.170000Fetch00.000.000000------------------------------------------------------

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。