diff options
Diffstat (limited to 'doc/src/sgml/ref/create_constraint.sgml')
-rw-r--r-- | doc/src/sgml/ref/create_constraint.sgml | 171 |
1 files changed, 0 insertions, 171 deletions
diff --git a/doc/src/sgml/ref/create_constraint.sgml b/doc/src/sgml/ref/create_constraint.sgml deleted file mode 100644 index 3ec3f746eeb..00000000000 --- a/doc/src/sgml/ref/create_constraint.sgml +++ /dev/null @@ -1,171 +0,0 @@ -<!-- -doc/src/sgml/ref/create_constraint.sgml -PostgreSQL documentation ---> - -<refentry id="SQL-CREATECONSTRAINT"> - <refmeta> - <refentrytitle>CREATE CONSTRAINT TRIGGER</refentrytitle> - <manvolnum>7</manvolnum> - <refmiscinfo>SQL - Language Statements</refmiscinfo> - </refmeta> - - <refnamediv> - <refname>CREATE CONSTRAINT TRIGGER</refname> - <refpurpose>define a new constraint trigger</refpurpose> - </refnamediv> - - <indexterm zone="sql-createconstraint"> - <primary>CREATE CONSTRAINT TRIGGER</primary> - </indexterm> - - <refsynopsisdiv> -<synopsis> -CREATE CONSTRAINT TRIGGER <replaceable class="parameter">name</replaceable> - AFTER <replaceable class="parameter">event</replaceable> [ OR ... ] - ON <replaceable class="parameter">table_name</replaceable> - [ FROM <replaceable class="parameter">referenced_table_name</replaceable> ] - { NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY DEFERRED } } - FOR EACH ROW - [ WHEN ( <replaceable class="parameter">condition</replaceable> ) ] - EXECUTE PROCEDURE <replaceable class="parameter">function_name</replaceable> ( <replaceable class="parameter">arguments</replaceable> ) -</synopsis> - </refsynopsisdiv> - - <refsect1> - <title>Description</title> - - <para> - <command>CREATE CONSTRAINT TRIGGER</command> creates a - <firstterm>constraint trigger</>. This is the same as a regular trigger - except that the timing of the trigger firing can be adjusted using - <xref linkend="SQL-SET-CONSTRAINTS">. - Constraint triggers must be <literal>AFTER ROW</> triggers. They can - be fired either at the end of the statement causing the triggering event, - or at the end of the containing transaction; in the latter case they are - said to be <firstterm>deferred</>. A pending deferred-trigger firing can - also be forced to happen immediately by using <command>SET CONSTRAINTS</>. - </para> - </refsect1> - - <refsect1> - <title>Parameters</title> - - <variablelist> - <varlistentry> - <term><replaceable class="PARAMETER">name</replaceable></term> - <listitem> - <para> - The name of the constraint trigger. This is also the name to use - when modifying the trigger's behavior using <command>SET CONSTRAINTS</>. - The name cannot be schema-qualified — the trigger inherits the - schema of its table. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><replaceable class="PARAMETER">event</replaceable></term> - <listitem> - <para> - One of <literal>INSERT</literal>, <literal>UPDATE</literal>, or - <literal>DELETE</literal>; this specifies the event that will fire the - trigger. Multiple events can be specified using <literal>OR</literal>. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><replaceable class="PARAMETER">table_name</replaceable></term> - <listitem> - <para> - The (possibly schema-qualified) name of the table in which - the triggering events occur. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><replaceable class="PARAMETER">referenced_table_name</replaceable></term> - <listitem> - <para> - The (possibly schema-qualified) name of another table referenced by the - constraint. This option is used for foreign-key constraints and is not - recommended for general use. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>DEFERRABLE</literal></term> - <term><literal>NOT DEFERRABLE</literal></term> - <term><literal>INITIALLY IMMEDIATE</literal></term> - <term><literal>INITIALLY DEFERRED</literal></term> - <listitem> - <para> - The default timing of the trigger. - See the <xref linkend="SQL-CREATETABLE"> - documentation for details of these constraint options. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><replaceable class="parameter">condition</replaceable></term> - <listitem> - <para> - A Boolean expression that determines whether the trigger function - will actually be executed. This acts the same as in <xref - linkend="SQL-CREATETRIGGER">. - Note in particular that evaluation of the <literal>WHEN</> - condition is not deferred, but occurs immediately after the row - update operation is performed. If the condition does not evaluate - to <literal>true</> then the trigger is not queued for deferred - execution. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><replaceable class="PARAMETER">function_name</replaceable></term> - <listitem> - <para> - The function to call when the trigger is fired. See <xref - linkend="SQL-CREATETRIGGER"> for - details. - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term><replaceable class="PARAMETER">arguments</replaceable></term> - <listitem> - <para> - Optional argument strings to pass to the trigger function. See <xref - linkend="SQL-CREATETRIGGER"> for - details. - </para> - </listitem> - </varlistentry> - </variablelist> - </refsect1> - - <refsect1> - <title>Compatibility</title> - <para> - <command>CREATE CONSTRAINT TRIGGER</command> is a - <productname>PostgreSQL</productname> extension of the <acronym>SQL</> - standard. - </para> - </refsect1> - - <refsect1> - <title>See Also</title> - - <simplelist type="inline"> - <member><xref linkend="sql-createtrigger"></member> - <member><xref linkend="sql-droptrigger"></member> - <member><xref linkend="sql-set-constraints"></member> - </simplelist> - </refsect1> -</refentry> |