支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

50.4. PostgreSQL 規則系統 #

PostgreSQL 支援一個強大的規則系統,用於指定視窗(views)和不明確的視窗更新。 最初,PostgreSQL 規則系統由兩個實作組成

  • 第一個使用列級別處理,並在執行器(executor)中深入實作。 只要存取了單獨的列,就會呼叫規則系統。 此實作已於 1995 年移除,當時 Berkeley Postgres 專案的最後一個正式版本被轉換為 Postgres95

  • 規則系統的第二個實作是一種稱為查詢重寫的技術。 重寫系統是一個模組,存在於剖析器階段規劃器/最佳化器之間。 此技術仍在實作中。

查詢重寫器在第 39 章中進行了詳細討論,因此無需在此處進行介紹。 我們僅指出重寫器的輸入和輸出都是查詢樹,也就是說,樹的表示形式或語義細節層次沒有變化。 重寫可以被認為是一種巨集擴展的形式。

提交更正

如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表單報告文件問題。