summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2011-03-02 16:39:18 +0000
committerTom Lane2011-03-02 16:39:18 +0000
commit2f6c8453cf3f38a70adbcb59489630cd5be92570 (patch)
tree55ea221c1251a4d1fc9b4415abbf583095f579d3
parent7e49330cad885a76441253da74b88e7d2f27c9f0 (diff)
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.
-rw-r--r--doc/src/sgml/ref/create_trigger.sgml7
1 files 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.