close

如何製作最佳SQL

 

俗語說的好:工欲善其事,必先利其器。想要寫好一個好的SQL Statement 使用好的工具是在所難免的,而Toad 則是大家心目中的首選。
然而Toad 的功能如此強大,我們又應該使用哪些功能來幫助我們來撰寫 SQL Statement,而撰寫出的SQL是一個效率高,維護方便,而且又可以不需要太多複雜技術的方式來完成。

在這裡筆者教各位讀者兩大招式:

 

第一招Code Xpert:
這工具是深藏在Toad for Professional 之中,也就是大家口中的Toad 專業版,一個好的SQL不只是要求有好的效率而已,而是要做全面性的分析判斷,而Code Xpert 有著下列這些特性,可以幫助大家製作最佳SQL。

  •  程式碼複雜性管理報告
  •  檢查程式碼有效性
  •  配置規則
  •  評估:
    •  Efficiency (效能性)
    •  Correctness (準確性)
    •  Readability (可讀性)
    •  Maintainability (維護性)
    •  Program structure (結構性)

 

那現在就開始介紹一下Code Xpert 的使用方式:
1.打開 Toad Editor 功能,撰寫一個SQL,選擇  DBM_T_200905_Toad_01.jpg  ,執行   DBM_T_200905_Toad_02.jpg

 

DBM_T_200905_Toad_03.jpg 

 

2.就這麼簡單完成分析,現在讓我們來看看檢查結果

 

DBM_T_200905_Toad_04.jpg 

 

3.好像有不少問題,選幾個我們來看一下到底是什麼問題

  • Efficiency (效能性) 的問題分析:
    CodeXpert 找出資料型態不對的問題,Oracle沒有int 這種資料型態DBM_T_200905_Toad_05.jpg

 

  • Maintainability (維護性) 的問題分析:
    CodeXpert 發現這樣的SQL撰寫方式有維護上的問題
     DBM_T_200905_Toad_06.jpg

 

 

  • CodeXpert 還提供了SQL撰寫方式的建議
    DBM_T_200905_Toad_07.jpg 

還有報表以及其他的分析建議,等待各位前往體驗Code Xpert 的魅力。

 


第二招 SQL Optimizer:

 

  SQL Optimizer 是一套Quest獨有技術的工具軟體,利用其獨特的技術將使用者所撰寫的SQL Statement執行效能最佳化演算,使用電腦來自動撰寫相同功能的SQL Statement,再將電腦撰寫好的SQL Statement予以分析,找出效能最好的SQL Statement。


  相信許多倍力資訊的客戶,以及Quest產品的愛好者對於該項產品並不陌生,只是覺得很奇怪這不是一項獨立的產品嗎?什麼時候變成Toad的一部份。其實並不奇怪,在Toad for Oracle Xpert版本,也就是Toad專家版的時候已經收編旗下,這樣的一個動作使得Toad在程式開發上更加的強悍。


現在大家來體驗一下Toad 與 SQL Optimizer 結合後的強大威力:

1.打開 Toad Editor 功能,撰寫一個SQL,執行   

 

DBM_T_200905_Toad_08.jpg 

 

2.選擇Tuning Lab,來執行SQL Tuning

 

DBM_T_200905_Toad_09.jpg 

 

3.進入Tuning Lab,請選擇 來執行產生相同功能的SQL Statement

 

DBM_T_200905_Toad_10.jpg 

 

4.此時我們可以看到原來的SQL在Plan Cost排名是第20位,
  我們可選擇部份SQL來執行,確認實際在DB上的效能與資源耗用情況

 

DBM_T_200905_Toad_11.jpg 

 

5.實際執行後我們可以看到所有SQL在DB上的效率與資源耗用情況

 

DBM_T_200905_Toad_12.jpg 

 

6.最後會依實際執行的結果,推薦最佳的SQL,並且分析資源耗用情況供使用
  者參考

 

DBM_T_200905_Toad_13.jpg 

 

 

  最後,幫助各位讀者無論在資料庫管理或者是在開發介面的應用上更加方便,是Toad的目標,也是倍力資訊代理Quest產品的目的,但是筆者在這裡還是不免跟各位囉唆一下,善用頭腦才是王道,Toad提供了絕佳的輔助工具,還是要各位讀者善加利用,方能成為各位的最佳幫手。

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 itfamily 的頭像
    itfamily

    資訊軟體是啥米碗糕

    itfamily 發表在 痞客邦 留言(0) 人氣()