【DB筆試面試603】在Oracle中,固定SQL執行計劃的方法有哪些?
- 2019 年 10 月 10 日
- 筆記
題目部分
在Oracle中,固定SQL執行計劃的方法有哪些?
♣
答案部分
在實際項目中,通常在開發環境下,一些SQL執行沒有任何功能問題,而當到了生產環境或生產環境的數據量發生較大的變數時,其SQL的執行效率非常低。此時如果更改SQL,那麼可能需要重新修改源程式以及重新編譯程式。如果修改源程式的成本比較大,那麼可以使用一些方法在不改變源應用程式的情況下更改特定SQL的執行計劃並固定下來。因為在SQL語句的執行計劃發生更改時,可能存在性能風險。SQL計劃發生更改的原因有很多,如優化程式版本、優化程式統計資訊、優化程式參數、方案定義、系統設計和SQL概要文件創建等。有4種方式可以固定和控制執行計劃,分別是使用Hint(提示)、OUTLINE(存儲概要)、SQL PROFILE(SQL概要文件)和SPM(SQL Plan Management,SQL計劃管理),如下表所示:

本文選自《Oracle程式設計師面試筆試寶典》,作者:李華榮。