aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas G. Lockhart <lockhart@fourpalms.org>2000-04-14 15:17:28 +0000
committerThomas G. Lockhart <lockhart@fourpalms.org>2000-04-14 15:17:28 +0000
commit99cc10accc82184b38ac2990be5aa79d58ec3951 (patch)
tree992950698d0dc348c660f6775472e516b399de79
parent0e2dfd5e5ecad3db42b124f9182637093d88594f (diff)
downloadpostgresql-99cc10accc82184b38ac2990be5aa79d58ec3951.tar.gz
postgresql-99cc10accc82184b38ac2990be5aa79d58ec3951.zip
Add mention of SET CONSTRAINT and CREATE CONSTRAINT TRIGGER.
-rw-r--r--doc/src/sgml/ref/allfiles.sgml3
-rw-r--r--doc/src/sgml/ref/commands.sgml3
-rw-r--r--doc/src/sgml/ref/create_constraint.sgml150
-rw-r--r--doc/src/sgml/ref/set.sgml54
4 files changed, 202 insertions, 8 deletions
diff --git a/doc/src/sgml/ref/allfiles.sgml b/doc/src/sgml/ref/allfiles.sgml
index 89a7ed52c06..aef598d8a3a 100644
--- a/doc/src/sgml/ref/allfiles.sgml
+++ b/doc/src/sgml/ref/allfiles.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/allfiles.sgml,v 1.17 2000/04/08 05:11:03 tgl Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/allfiles.sgml,v 1.18 2000/04/14 15:17:28 thomas Exp $
Postgres documentation
Complete list of usable sgml source files in this directory.
-->
@@ -50,6 +50,7 @@ Complete list of usable sgml source files in this directory.
<!entity commit system "commit.sgml">
<!entity copyTable system "copy.sgml">
<!entity createAggregate system "create_aggregate.sgml">
+<!entity createConstraint system "create_constraint.sgml">
<!entity createDatabase system "create_database.sgml">
<!entity createFunction system "create_function.sgml">
<!entity createGroup system "create_group.sgml">
diff --git a/doc/src/sgml/ref/commands.sgml b/doc/src/sgml/ref/commands.sgml
index 45f609647f0..28f7f0cbde5 100644
--- a/doc/src/sgml/ref/commands.sgml
+++ b/doc/src/sgml/ref/commands.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/Attic/commands.sgml,v 1.24 2000/04/08 05:11:03 tgl Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/Attic/commands.sgml,v 1.25 2000/04/14 15:17:28 thomas Exp $
Postgres documentation
-->
@@ -24,6 +24,7 @@ Postgres documentation
&commit;
&copyTable;
&createAggregate;
+ &createConstraint;
&createDatabase;
&createFunction;
&createGroup;
diff --git a/doc/src/sgml/ref/create_constraint.sgml b/doc/src/sgml/ref/create_constraint.sgml
new file mode 100644
index 00000000000..474b848a91b
--- /dev/null
+++ b/doc/src/sgml/ref/create_constraint.sgml
@@ -0,0 +1,150 @@
+<!--
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/create_constraint.sgml,v 1.1 2000/04/14 15:17:28 thomas Exp $
+Postgres documentation
+-->
+
+<refentry id="SQL-CREATECONSTRAINT">
+ <refmeta>
+ <refentrytitle id="sql-createconstraint-title">
+ CREATE CONSTRAINT TRIGGER
+ </refentrytitle>
+ <refmiscinfo>SQL - Language Statements</refmiscinfo>
+ </refmeta>
+ <refnamediv>
+ <refname>
+ CREATE CONSTRAINT TRIGGER
+ </refname>
+ <refpurpose>
+ Create a trigger to support a constraint
+ </refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+ <refsynopsisdivinfo>
+ <date>2000-04-13</date>
+ </refsynopsisdivinfo>
+ <synopsis>
+CREATE CONSTRAINT TRIGGER <replaceable class="parameter">name</replaceable>
+ AFTER <replaceable class="parameter">events</replaceable> ON
+ <replaceable class="parameter">relation</replaceable> <replaceable class="parameter">constraint</replaceable> <replaceable class="parameter">attributes</replaceable>
+ FOR EACH ROW EXECUTE PROCEDURE <replaceable class="parameter">func</replaceable> '(' <replaceable class="parameter">args</replaceable> ')'
+ </synopsis>
+
+ <refsect2 id="R2-SQL-CREATECONSTRAINT-1">
+ <title>
+ Inputs
+ </title>
+ <para>
+
+ <variablelist>
+ <varlistentry>
+ <term><replaceable class="PARAMETER">name</replaceable></term>
+ <listitem>
+ <para>
+ The name of the constraint trigger.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><replaceable class="PARAMETER">events</replaceable></term>
+ <listitem>
+ <para>
+ The event categories for which this trigger should be fired.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><replaceable class="PARAMETER">relation</replaceable></term>
+ <listitem>
+ <para>
+ Table name of the triggering relation.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><replaceable class="PARAMETER">constraint</replaceable></term>
+ <listitem>
+ <para>
+ Actual onstraint specification.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><replaceable class="PARAMETER">attributes</replaceable></term>
+ <listitem>
+ <para>
+ Contraint attributes.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><replaceable class="PARAMETER">func</replaceable>(<replaceable class="PARAMETER">args</replaceable>)</term>
+ <listitem>
+ <para>
+ Function to call as part of the trigger processing.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </refsect2>
+
+ <refsect2 id="R2-SQL-CREATECONSTRAINT-2">
+ <title>
+ Outputs
+ </title>
+ <para>
+
+ <variablelist>
+ <varlistentry>
+ <term><computeroutput>
+CREATE CONSTRAINT
+ </computeroutput></term>
+ <listitem>
+ <para>
+ Message returned if successful.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </refsect2>
+ </refsynopsisdiv>
+
+ <refsect1 id="R1-SQL-CREATECONSTRAINT-1">
+ <title>
+ Description
+ </title>
+ <para>
+ <command>CREATE CONSTRAINT TRIGGER</command> is used from inside of
+ <command>CREATE/ALTER TABLE</command> and by
+ <application>pg_dump</application> to create the special triggers for
+ referential integrity.
+ </para>
+
+ <para>
+ It is not intended for general use.
+ </para>
+ </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:"/usr/lib/sgml/catalog"
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/src/sgml/ref/set.sgml b/doc/src/sgml/ref/set.sgml
index 76f65975474..0628ed673a6 100644
--- a/doc/src/sgml/ref/set.sgml
+++ b/doc/src/sgml/ref/set.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/set.sgml,v 1.39 2000/04/11 17:23:35 momjian Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/set.sgml,v 1.40 2000/04/14 15:17:28 thomas Exp $
Postgres documentation
-->
@@ -24,6 +24,7 @@ Postgres documentation
</refsynopsisdivinfo>
<synopsis>
SET <replaceable class="PARAMETER">variable</replaceable> { TO | = } { <replaceable class="PARAMETER">value</replaceable> | '<replaceable class="PARAMETER">value</replaceable>' | DEFAULT }
+SET CONSTRAINTS {ALL | <replaceable class="parameter">constraintlist</replaceable>} <replaceable>mode</replaceable>
SET TIME ZONE { '<replaceable class="PARAMETER">timezone</replaceable>' | LOCAL | DEFAULT }
SET TRANSACTION ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE }
</synopsis>
@@ -92,7 +93,7 @@ SET TRANSACTION ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE }
</varlistentry>
<varlistentry>
- <term>DateStyle</term>
+ <term>DATESTYLE</term>
<listitem>
<para>
Set the date/time representation style. Affects the output format,
@@ -202,7 +203,7 @@ SET TRANSACTION ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE }
</varlistentry>
<varlistentry>
- <term>Seed</term>
+ <term>SEED</term>
<listitem>
<para>
Sets the internal seed for the random number generator.
@@ -243,14 +244,14 @@ SELECT setseed(<replaceable>value</replaceable>);
<term>SERVER_ENCODING</term>
<listitem>
<para>
- Sets the multi-byte server encoding
+ Sets the multi-byte server encoding to:
<variablelist>
<varlistentry>
<term><replaceable class="parameter">value</replaceable></term>
<listitem>
<para>
- Sets the multi-byte server encoding.
+ The identifying value for the server encoding.
</para>
</listitem>
</varlistentry>
@@ -265,6 +266,47 @@ SELECT setseed(<replaceable>value</replaceable>);
</varlistentry>
<varlistentry>
+ <term>CONSTRAINT</term>
+ <listitem>
+ <para>
+ SET CONSTRAINTS is the SQL3 specified command to change the
+ default behaviour of constraints with respect to deferring in the current
+ transaction. Allowed parameters are:
+
+ <variablelist>
+ <varlistentry>
+ <term><replaceable class="parameter">constraintlist</replaceable></term>
+ <listitem>
+ <para>
+ Comma separated list of deferrable constraint names.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><replaceable class="parameter">mode</replaceable></term>
+ <listitem>
+ <para>
+ The constraint mode. Allowed values are
+ <option>DEFERRED</option> and <option>IMMEDIATE</option>.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+
+ <para>
+ In deferred mode, the actual check of the constraint is held
+ back until either its mode is explicitly set to <option>IMMEDIATE</option>,
+ or until COMMIT. This is actually only done for foreign key
+ constraints, so it does not apply to UNIQUE or other
+ constraints.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>TIME ZONE</term>
<term>TIMEZONE</term>
<listitem>
<para>
@@ -862,7 +904,7 @@ SET VARIABLE
</computeroutput></term>
<listitem>
<para>
- Message returned if successfully.
+ Message returned if successful.
</para>
</listitem>
</varlistentry>