廣州總校區(qū)切換校區(qū)
復(fù)制成功
微信號:togogoi
添加微信好友, 詳細了解課程
已復(fù)制成功,如果自動跳轉(zhuǎn)微信失敗,請前往微信添加好友
打開微信
圖片

行業(yè)新聞

怎么判斷sql語句執(zhí)行計劃是否正確

發(fā)布時間: 2023-02-22

當(dāng)在一條指令的執(zhí)行計劃中發(fā)現(xiàn)異常時,通常會生成一個sqlrpt來查看所使用的執(zhí)行計劃是否正確。如何確定執(zhí)行計劃是否正確,由以下步驟決定:

1.首先,檢查SQL語句的結(jié)構(gòu),看連接是union、還是等值連接還是左、右連接,然后看連接中的表的數(shù)量。

2.檢查執(zhí)行計劃中包含異常的部分。

3.檢查表的索引和表是否是分區(qū)的,where條件中使用的索引列是否正確,統(tǒng)計分析表中的表的分析結(jié)果是否正確。

4.分析各表的使用情況和各表的日常數(shù)據(jù)增長情況。

5.分析為什么會出現(xiàn)異常的執(zhí)行計劃。

追蹤執(zhí)行計劃的方法

(1) set autotrace on explain,只顯示查詢結(jié)果和執(zhí)行計劃。

set autotrace on statistic,只顯示查詢結(jié)果的統(tǒng)計數(shù)據(jù)。

set autotrace on 顯示前兩個

set autotrace traceonly 不顯示查詢結(jié)果,只顯示執(zhí)行計劃和統(tǒng)計數(shù)據(jù)

set autotrace off 關(guān)閉追蹤功能

要使用autotrace,必須在sqlplus中使用,并使用的是用戶sys。

(2) 你可以使用explain plan for  select   * from c_cons 來解析執(zhí)行計劃

然后通過select * from table(dbms_xplain.display(null,null,'outline',null)); 來顯示執(zhí)行計劃。

(3) 使用Toad for oracle工具,使用sql_id創(chuàng)建一個執(zhí)行計劃

怎么判斷sql語句執(zhí)行計劃是否正確

上一篇: 什么是網(wǎng)絡(luò)釣魚攻擊

下一篇: IDEA的文件夾類型介紹

<
在線咨詢 ×

您好,請問有什么可以幫您?我們將竭誠提供最優(yōu)質(zhì)服務(wù)!