Oracle執行SQL查詢語句的步驟

來源:互聯網
上載者:User

Oracle執行SQL查詢語句的步驟
Oracle執行SQL查詢語句的步驟查詢語句和其他語句不同,如果查詢語句執行成功,會返回查詢結果,而其他類型的SQL語句只是返回執行成功或者失敗的資訊。 Oracle處理查詢語句分為3大階段:編譯(parse)、執行(execute)、提起資料(fetch)。

  • 編譯(parse):在進行編譯時間,伺服器處理序會將SQL語句的內容放入共用池(shared pool)的庫快取(library cache)中,並完成以下處理:
    • 首先在共用池中查詢是否包含相同的SQL語句,如果沒有就進行後續的處理。
    • 檢查SQL語句文法是否正確。
    • 查看資料字典來檢查SQL語句相關表和列的定義。
    • 對 SQL語句所操作的對象添加編譯鎖(parse locks),使得在編譯語句期間,這些對象的定義不會改變。
    • 檢查使用者對SQL語句所引用的對象是否有許可權。
    • 產生該SQL的執行計畫。
    • 將SQL語句和執行計畫放入共用的SQL區。
  • 執行(execute):Oracle伺服器處理序開始執行編譯後的SQL語句。
  • 提取(fetch): Oracle伺服器處理序選擇所需的資料行,並在需要時將其排序,最後將結果返回給使用者進程。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.