Skip to content

Commit e045565

Browse files
committed
Improve docs on updatable views
Introduce the options before going into details, and add a link to the CREATE TRIGGER documentation. Author: David Johnston Reviewed-By: Anastasia Lubennikova Discussion: https://postgr.es/m/CAKFQuwYLLRhheo0_Y4Jp=vJ_YDsz1KoRuTpX1A_bUxmHTmLe-A@mail.gmail.com
1 parent f1516ad commit e045565

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

doc/src/sgml/rules.sgml

+6-1
Original file line numberDiff line numberDiff line change
@@ -797,6 +797,10 @@ SELECT t1.a, t2.b, t1.ctid FROM t1, t2 WHERE t1.a = t2.a;
797797
relation points at a subquery range-table entry, which will not
798798
work. There are several ways in which <productname>PostgreSQL</productname>
799799
can support the appearance of updating a view, however.
800+
In order of user-experienced complexity those are: automatically substitute
801+
in the underlying table for the view, execute a user-defined trigger,
802+
or rewrite the query per a user-defined rule.
803+
These options are discussed below.
800804
</para>
801805

802806
<para>
@@ -812,7 +816,8 @@ SELECT t1.a, t2.b, t1.ctid FROM t1, t2 WHERE t1.a = t2.a;
812816

813817
<para>
814818
Alternatively, the operation may be handled by a user-provided
815-
<literal>INSTEAD OF</literal> trigger on the view.
819+
<literal>INSTEAD OF</literal> trigger on the view
820+
(see <xref linkend="sql-createtrigger"/>).
816821
Rewriting works slightly differently
817822
in this case. For <command>INSERT</command>, the rewriter does
818823
nothing at all with the view, leaving it as the result relation

0 commit comments

Comments
 (0)