欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

sql查找未使用綁定變量的語句

本篇內(nèi)容主要講解“sql查找未使用綁定變量的語句”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“sql查找未使用綁定變量的語句”吧!

10年積累的成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站策劃后付款的網(wǎng)站建設(shè)流程,更有固始免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

一、查找方法:

從ORACLE10G開始,V$SQL視圖中增加列FORCE_MATCHING_SIGNATURESignature used when the CURSOR_SHARING parameter is set to FORCE;(當(dāng)CURSOR_SHARING參數(shù)設(shè)置成FORCE時,產(chǎn)生的執(zhí)行計(jì)劃是一樣的)

測試1:cursor_sharing值為EXACT

SQL>  show parameter cursor_sharing;

 

NAME                           TYPE           VALUE

------------------------------------ ----------- ---------------------

cursor_sharing                    string           EXACT

SQL>SELECT /*john*/* from bas.john  where name='曹定芳';

 

SQL>SELECT /*john*/* from bas.john  where name='張杰雄';

    

SQL>SELECT /*john*/* from bas.john  where name='練為斌';

select sql_text,FORCE_MATCHING_SIGNATURE,EXACT_MATCHING_SIGNATURE from v$sql twhere sql_text like'%john%';

 

SQL_TEXT                                              FORCE_MATCHING_SIGNATURE     EXACT_MATCHING_SIGNATURE    

----------------------------------------------------   ---------------------      -----------------------------

SELECT /*john*/* from bas.john  where name='曹定芳'    1.58728914732591E19         8.65016113461197E18

SELECT /*john*/* from bas.john  where name='張杰雄'    1.58728914732591E19         1.55664749687513E19

SELECT /*john*/* from bas.john  where name='練為斌'    1.58728914732591E19         6.34382341893161E18        

測試1說明:當(dāng)name值不一樣的時候FORCE_MATCHING_SIGNATURE的值相同,而EXACT_MATCHING_SIGNATURE值不同,說明在cursor_sharing=force時,執(zhí)行計(jì)劃可共用;cursor_sharing=exact時,執(zhí)行計(jì)劃不可共用;我們使用綁定變量后,同樣也可以達(dá)到執(zhí)行計(jì)劃共用的效果;

測試2:cursor_sharing值為FORCE

1、執(zhí)行語句:alter system set cursor_sharing=force;

SQL> alter system set cursor_sharing=force;

 

System altered.

 

SQL> show parameter cursor_sharing;

 

NAME                           TYPE          VALUE

---------------------------       ---------    -----------

cursor_sharing                 string          FORCE

 

SQL> alter system flush shared_pool;

 

System altered.

2、同樣執(zhí)行三條查詢語句

SQL>SELECT /*john*/* from bas.john  where name='曹定芳';

 

SQL>SELECT /*john*/* from bas.john  where name='張杰雄';

 

SQL>SELECT /*john*/* from bas.john  where name='練為斌';

3、查找V$SQL的語句情況

select sql_text,FORCE_MATCHING_SIGNATURE,EXACT_MATCHING_SIGNATURE from v$sql t where sql_text like '%john%';

SQL_TEXT                                              FORCE_MATCHING_SIGNATURE     EXACT_MATCHING_SIGNATURE    

----------------------------------------------------   ---------------------      -----------------------------

SELECT /*john*/* from bas.john  where name=:"SYS_B_0"    1.58728914732591E19         1.58728914732591E19      

測試2說明:當(dāng)我們把cursor_sharing設(shè)置為force后,發(fā)現(xiàn)語句執(zhí)行計(jì)劃共用了,并且自動使用綁定變量(此時v$sql視圖中只查詢到一條與之相關(guān)的語句)。

測試3、cursor_sharing值為EXACT,但使用綁定變量

1、執(zhí)行語句:alter system set cursor_sharing=EXACT;

SQL> alter system set cursor_sharing=force;

 

System altered.

 

SQL> show parameter cursor_sharing;

 

NAME                           TYPE          VALUE

---------------------------       ---------    -----------

cursor_sharing                 string          EXACT

 

SQL> alter system flush shared_pool;

 

System altered.

2、使用綁定變量查詢

SQL>SELECT /*john*/* from bas.john  where name=:a;    

3、查找V$SQL的語句情況

select sql_text,FORCE_MATCHING_SIGNATURE,EXACT_MATCHING_SIGNATURE from v$sql twhere sql_text like'%john%';

 

SQL_TEXT                                              FORCE_MATCHING_SIGNATURE     EXACT_MATCHING_SIGNATURE    

----------------------------------------------------   ---------------------      -----------------------------

SELECT /*john*/* from bas.john  where name=:a           1.4513622515145E19        1.4513622515145E19

測試3總結(jié):當(dāng)我們把cursor_sharing設(shè)置為EXACT后,并通過綁定變量查詢,發(fā)現(xiàn)語句執(zhí)行計(jì)劃共用了;

二、解決方法

通過以上測試已經(jīng)了解:如果V$SQL里面的FORCE_MATCHING_SIGNATURE值一樣的SQL語句,那么就可以通過綁定變量來進(jìn)行相應(yīng)的優(yōu)化了。

select to_char(FORCE_MATCHING_SIGNATURE) as FORCE_MATCHING_SIGNATURE, count(1) as counts

from v$sql

where FORCE_MATCHING_SIGNATURE>0 and FORCE_MATCHING_SIGNATURE <> EXACT_MATCHING_SIGNATURE

group by FORCE_MATCHING_SIGNATURE

having count(1) > &a

order by 2 desc;

到此,相信大家對“sql查找未使用綁定變量的語句”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

當(dāng)前文章:sql查找未使用綁定變量的語句
網(wǎng)頁鏈接:http://aaarwkj.com/article46/iioghg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站網(wǎng)站策劃電子商務(wù)、軟件開發(fā)品牌網(wǎng)站制作、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
欧美亚洲国产日韩在线高清| 亚洲综合一区国产精品| 日韩精品成人区中文字幕| 亚洲精品小视频在线观看| 中午字幕久久亚洲精品| av免费在线观看网页| 2023国产精品一区| 国产欧美日韩精品一区| 欧美一区二区久久综合| 看夫妻性生活免费视频| 亚洲一区二区三区无人区| 国产亚洲一区二区三区av| 日韩av在线播放亚洲天堂| 国产伦人偷精品免费视频| 人妻少妇被猛烈进入中出视频| 精品久久人妻中文字幕免费| 亚洲女人天堂av在线| 亚洲一区二区福利视频| 欧美日韩黄色人人小视频| 91麻豆精品国产自产| 日韩午夜免费一区二区蜜桃| 天天干夜夜操天天射| 日本经典三级在线视频| 午夜国产精品福利一二| 色噜噜色一区二区三区| 亚洲伦理第一页中文字幕| 国产在线第一页第二页| 丰满人妻视频一二三区| 在线激情av中文字幕| 麻豆影片在线免费观看| 日韩精品一区高清视频| 欧美日韩亚洲精品综合网| 人妻少妇亚洲中文字幕| 国产午夜男人天堂手机| 国产欧美日韩一级二级三级| 少妇二区三区精品视频| 中文免费在线观看av| 日韩高清av一区二区三区| 精品国产一区二区av麻豆| 九九在线精品视频免费| 色综合天天综合天天更新|