1
1
<!--
2
- $Header: /cvsroot/pgsql/doc/src/sgml/ref/create_trigger.sgml,v 1.30 2002/11/23 03:59:06 momjian Exp $
2
+ $Header: /cvsroot/pgsql/doc/src/sgml/ref/create_trigger.sgml,v 1.31 2002/12/17 17:41:30 momjian Exp $
3
3
PostgreSQL documentation
4
4
-->
5
5
@@ -21,9 +21,8 @@ PostgreSQL documentation
21
21
<date>2000-03-25</date>
22
22
</refsynopsisdivinfo>
23
23
<synopsis>
24
- CREATE TRIGGER <replaceable class="PARAMETER">name</replaceable> {
25
- BEFORE | AFTER } { <replaceable class="PARAMETER">event</replaceable> [ OR ... ] }
26
- ON <replaceable class="PARAMETER">table</replaceable> [ FOR EACH { ROW | STATEMENT } ]
24
+ CREATE TRIGGER <replaceable class="PARAMETER">name</replaceable> { BEFORE | AFTER } { <replaceable class="PARAMETER">event</replaceable> [ OR ... ] }
25
+ ON <replaceable class="PARAMETER">table</replaceable> [ FOR [ EACH ] { ROW | STATEMENT } ]
27
26
EXECUTE PROCEDURE <replaceable class="PARAMETER">func</replaceable> ( <replaceable class="PARAMETER">arguments</replaceable> )
28
27
</synopsis>
29
28
@@ -186,7 +185,9 @@ CREATE TRIGGER
186
185
deleted tuple. In contrast, a trigger that executes <literal>FOR
187
186
EACH STATEMENT</literal> of the specified operation only executes
188
187
once for any given operation, regardless of how many rows it
189
- modifies.
188
+ modifies (in particular, an operation that modifies zero rows will
189
+ still result in the execution of any applicable <literal>FOR EACH
190
+ STATEMENT</literal> triggers).
190
191
</para>
191
192
192
193
<para>
@@ -330,6 +331,12 @@ CREATE TABLE distributors (
330
331
time-of-creation order. <productname>PostgreSQL</productname>
331
332
uses name order, which was judged more convenient to work with.
332
333
</para>
334
+
335
+ <para>
336
+ The ability to specify multiple actions for a single trigger
337
+ using <literal>OR</literal> is a <productname>PostgreSQL</>
338
+ extension of the SQL standard.
339
+ </para>
333
340
</listitem>
334
341
</varlistentry>
335
342
</variablelist>
0 commit comments