oracle綁定變量及舉例

oracle綁定變量及舉例

ID:17898483

大小:21.74 KB

頁數:14頁

時間:2018-09-09

oracle綁定變量及舉例_第1頁
oracle綁定變量及舉例_第2頁
oracle綁定變量及舉例_第3頁
oracle綁定變量及舉例_第4頁
oracle綁定變量及舉例_第5頁
資源描述:

《oracle綁定變量及舉例》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。

1、1.什么是綁定變量,及舉例什么是綁定變量,問什么要進行綁定變量?Sql語句的執(zhí)行要經過解析、執(zhí)行、提取等幾個階段,其中解析最消耗資源,解析的過程中要進行語法、語義和權限的檢查,如果這些檢查都通過了,則進行執(zhí)行,執(zhí)行完成之后將sql語句的執(zhí)行計劃存儲在共享池中,如果下一次有相同的sql語句要執(zhí)行,則不需要解析,直接按照已經存在的執(zhí)行計劃進行執(zhí)行,就可以節(jié)省資源當多個sql語句執(zhí)行的時候大多數情況下是條件相同,只是條件里面的值不同。例如:A用戶:select*fromtwhereID=1B用戶:select*fromtwhereID=2綁定變

2、量就是將條件謂詞中不同的值保存在一個中間變量中,Oracle對用戶每次發(fā)起的sql語句做hash運算時,都產生相同的hash值,使用相同的執(zhí)行計劃,作為一個sql語句來執(zhí)行。Select*fromtwhereID=:X下面是綁定變量和非綁定變量的性能比較1)綁定變量執(zhí)行altersessionsetsql_trace=true;beginforxin1..10000loopexecuteimmediate'select*fromtwhereobject_name=:x'usingx;endloop;end;altersessionsets

3、ql_trace=false;trace文件中的執(zhí)行計劃和統(tǒng)計信息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. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯系客服。
3. 下載前請仔細閱讀文檔內容,確認文檔內容符合您的需求后進行下載,若出現內容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯系客服處理。