From 46651ce6fe013220ed397add242004d764fc0153 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 14:15:05 +0200 Subject: Adding upstream version 14.5. Signed-off-by: Daniel Baumann --- doc/src/sgml/html/rule-system.html | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 doc/src/sgml/html/rule-system.html (limited to 'doc/src/sgml/html/rule-system.html') diff --git a/doc/src/sgml/html/rule-system.html b/doc/src/sgml/html/rule-system.html new file mode 100644 index 0000000..7e55d34 --- /dev/null +++ b/doc/src/sgml/html/rule-system.html @@ -0,0 +1,30 @@ + +51.4. The PostgreSQL Rule System

51.4. The PostgreSQL Rule System

+ PostgreSQL supports a powerful + rule system for the specification + of views and ambiguous view updates. + Originally the PostgreSQL + rule system consisted of two implementations: + +

  • + The first one worked using row level processing and was + implemented deep in the executor. The rule system was + called whenever an individual row had been accessed. This + implementation was removed in 1995 when the last official release + of the Berkeley Postgres project was + transformed into Postgres95. +

  • + The second implementation of the rule system is a technique + called query rewriting. + The rewrite system is a module + that exists between the parser stage and the + planner/optimizer. This technique is still implemented. +

+

+ The query rewriter is discussed in some detail in + Chapter 41, so there is no need to cover it here. + We will only point out that both the input and the output of the + rewriter are query trees, that is, there is no change in the + representation or level of semantic detail in the trees. Rewriting + can be thought of as a form of macro expansion. +

\ No newline at end of file -- cgit v1.2.3