postgres.git / summary / log / commit / refs

commit    2f6c8453cf3f38a70adbcb59489630cd5be92570
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Wed Mar 02 16:39:18 2011 +0000
First released in: 9.1.0

    Fix erroneous documentation of the syntax of CREATE CONSTRAINT TRIGGER.
    
    The grammar requires a specific ordering of the clauses, but the
    documentation showed a different order.  This error was introduced in
    commit b47953f9c69d48a9261bd643e3170017b93f6337, which merged the CREATE
    CONSTRAINT TRIGGER documentation into the CREATE TRIGGER page.  There is
    no code bug AFAICS.


doc/src/sgml/ref/create_trigger.sgml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/doc/src/sgml/ref/create_trigger.sgml b/doc/src/sgml/ref/create_trigger.sgml index 492611eea8b..e697ab6cc93 100644 --- a/doc/src/sgml/ref/create_trigger.sgml +++ b/doc/src/sgml/ref/create_trigger.sgml @@ -22,9 +22,10 @@ PostgreSQL documentation <refsynopsisdiv> <synopsis> CREATE [ CONSTRAINT ] TRIGGER <replaceable class="PARAMETER">name</replaceable> { BEFORE | AFTER | INSTEAD OF } { <replaceable class="PARAMETER">event</replaceable> [ OR ... ] } - ON <replaceable class="PARAMETER">table</replaceable> [ FOR [ EACH ] { ROW | STATEMENT } ] + ON <replaceable class="PARAMETER">table</replaceable> [ FROM <replaceable class="parameter">referenced_table_name</replaceable> ] { NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY DEFERRED } } + [ FOR [ EACH ] { ROW | STATEMENT } ] [ WHEN ( <replaceable class="parameter">condition</replaceable> ) ] EXECUTE PROCEDURE <replaceable class="PARAMETER">function_name</replaceable> ( <replaceable class="PARAMETER">arguments</replaceable> ) </synopsis> @@ -518,8 +519,8 @@ CREATE TRIGGER view_insert deletes fire <emphasis>after</> the cascaded <literal>DELETE</> completes. The <productname>PostgreSQL</productname> behavior is for <literal>BEFORE DELETE</literal> to always fire before the delete action, even a cascading - one. This is considered more consistent. There is also unpredictable - behavior when <literal>BEFORE</literal> triggers modify rows or prevent + one. This is considered more consistent. There is also nonstandard + behavior if <literal>BEFORE</literal> triggers modify rows or prevent updates during an update that is caused by a referential action. This can lead to constraint violations or stored data that does not honor the referential constraint. [parent: 7e49330cad88]