1
0
mirror of https://github.com/postgres/postgres.git synced 2025-12-21 05:21:08 +03:00

Update of conformance information to SQL:2003

by Troels Arvin, Simon Riggs, Elein Mustain

Make spelling of SQL standard names uniform.
This commit is contained in:
Peter Eisentraut
2004-11-27 21:27:08 +00:00
parent 90c3ebe4d7
commit 49cbef7947
26 changed files with 302 additions and 202 deletions

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_domain.sgml,v 1.12 2004/03/23 13:21:41 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_domain.sgml,v 1.13 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -203,7 +203,7 @@ ALTER DOMAIN zipcode DROP CONSTRAINT zipchk;
<title>Compatibility</title>
<para>
The <command>ALTER DOMAIN</command> statement is compatible with SQL99,
The <command>ALTER DOMAIN</command> statement is compatible with SQL:1999,
except for the <literal>OWNER</> variant, which is a
<productname>PostgreSQL</productname> extension.
</para>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_sequence.sgml,v 1.8 2004/08/24 00:06:51 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_sequence.sgml,v 1.9 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -190,22 +190,11 @@ ALTER SEQUENCE serial RESTART WITH 105;
<refsect1>
<title>
Compatibility
</title>
<title>Compatibility</title>
<refsect2>
<title>
SQL99
</title>
<para>
<command>ALTER SEQUENCE</command> is a <productname>PostgreSQL</productname>
language extension.
There is no <command>ALTER SEQUENCE</command> statement
in <acronym>SQL99</acronym>.
</para>
</refsect2>
<para>
<command>ALTER SEQUENCE</command> conforms with <acronym>SQL:2003</acronym>.
</para>
</refsect1>
</refentry>

View File

@@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/ref/create_cast.sgml,v 1.18 2004/09/17 02:06:33 neilc Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/ref/create_cast.sgml,v 1.19 2004/11/27 21:27:07 petere Exp $ -->
<refentry id="SQL-CREATECAST">
<refmeta>
@@ -298,8 +298,8 @@ CREATE CAST (text AS int4) WITH FUNCTION int4(text);
<title>Compatibility</title>
<para>
The <command>CREATE CAST</command> command conforms to SQL99,
except that SQL99 does not make provisions for binary-compatible
The <command>CREATE CAST</command> command conforms to SQL:1999,
except that SQL:1999 does not make provisions for binary-compatible
types or extra arguments to implementation functions.
<literal>AS IMPLICIT</> is a <productname>PostgreSQL</productname>
extension, too.

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_function.sgml,v 1.62 2004/10/01 02:00:44 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_function.sgml,v 1.63 2004/11/27 21:27:07 petere Exp $
-->
<refentry id="SQL-CREATEFUNCTION">
@@ -419,7 +419,7 @@ CREATE OR REPLACE FUNCTION increment(i integer) RETURNS integer AS '
<title>Compatibility</title>
<para>
A <command>CREATE FUNCTION</command> command is defined in SQL99.
A <command>CREATE FUNCTION</command> command is defined in SQL:1999 and later.
The <productname>PostgreSQL</productname> version is similar but
not fully compatible. The attributes are not portable, neither are the
different available languages.

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_sequence.sgml,v 1.41 2004/07/12 05:36:56 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_sequence.sgml,v 1.42 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -297,10 +297,12 @@ END;
<title>Compatibility</title>
<para>
<command>CREATE SEQUENCE</command> is a
<productname>PostgreSQL</productname> language extension. There is
no <command>CREATE SEQUENCE</command> statement in the SQL
standard.
<command>CREATE SEQUENCE</command> is is specified in <acronym>SQL:2003</acronym>.
<productname>PostgreSQL</productname> conforms with the standard, with the following exceptions:
<itemizedlist>
<listitem><para>The standard's <literal>AS &lt;data type&gt;</literal> expression is not supported.</para></listitem>
<listitem><para>Obtaining the next value is done using the <function>nextval()</> function instead of the standard's <command>NEXT VALUE FOR</command> expression.</para></listitem>
</itemizedlist>
</para>
</refsect1>
</refentry>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_table.sgml,v 1.86 2004/11/05 19:15:51 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_table.sgml,v 1.87 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -865,8 +865,8 @@ CREATE TABLE cinemas (
<title id="SQL-CREATETABLE-compatibility-title">Compatibility</title>
<para>
The <command>CREATE TABLE</command> command conforms to SQL92
and to a subset of SQL99, with exceptions listed below.
The <command>CREATE TABLE</command> command conforms to SQL-92 and
to a subset of SQL:1999, with exceptions listed below.
</para>
<refsect2>
@@ -943,10 +943,11 @@ CREATE TABLE cinemas (
<para>
Multiple inheritance via the <literal>INHERITS</literal> clause is
a <productname>PostgreSQL</productname> language extension. SQL99
(but not SQL92) defines single inheritance using a different
syntax and different semantics. SQL99-style inheritance is not
yet supported by <productname>PostgreSQL</productname>.
a <productname>PostgreSQL</productname> language extension.
SQL:1999 (but not SQL-92) defines single inheritance using a
different syntax and different semantics. SQL:1999-style
inheritance is not yet supported by
<productname>PostgreSQL</productname>.
</para>
</refsect2>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_table_as.sgml,v 1.24 2004/09/23 03:43:57 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_table_as.sgml,v 1.25 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -166,9 +166,9 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE <replaceable>table_name
<title>Compatibility</title>
<para>
<command>CREATE TABLE AS</command> is specified by the SQL2003
<command>CREATE TABLE AS</command> is specified by the SQL:2003
standard. There are some small differences between the definition
of the command in SQL2003 and its implementation in
of the command in SQL:2003 and its implementation in
<productname>PostgreSQL</>:
<itemizedlist spacing="compact">

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_trigger.sgml,v 1.39 2003/12/01 17:58:27 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_trigger.sgml,v 1.40 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -208,20 +208,20 @@ CREATE TRIGGER <replaceable class="PARAMETER">name</replaceable> { BEFORE | AFTE
<para>
The <command>CREATE TRIGGER</command> statement in
<productname>PostgreSQL</productname> implements a subset of the
SQL99 standard. (There are no provisions for triggers in SQL92.)
SQL:1999 standard. (There are no provisions for triggers in SQL-92.)
The following functionality is missing:
<itemizedlist>
<listitem>
<para>
SQL99 allows triggers to fire on updates to specific columns
SQL:1999 allows triggers to fire on updates to specific columns
(e.g., <literal>AFTER UPDATE OF col1, col2</literal>).
</para>
</listitem>
<listitem>
<para>
SQL99 allows you to define aliases for the <quote>old</quote>
SQL:1999 allows you to define aliases for the <quote>old</quote>
and <quote>new</quote> rows or tables for use in the definition
of the triggered action (e.g., <literal>CREATE TRIGGER ... ON
tablename REFERENCING OLD ROW AS somename NEW ROW AS othername
@@ -235,7 +235,7 @@ CREATE TRIGGER <replaceable class="PARAMETER">name</replaceable> { BEFORE | AFTE
<listitem>
<para>
<productname>PostgreSQL</productname> only allows the execution
of a user-defined function for the triggered action. SQL99
of a user-defined function for the triggered action. SQL:1999
allows the execution of a number of other SQL commands, such as
<command>CREATE TABLE</command> as triggered action. This
limitation is not hard to work around by creating a user-defined
@@ -246,7 +246,7 @@ CREATE TRIGGER <replaceable class="PARAMETER">name</replaceable> { BEFORE | AFTE
</para>
<para>
SQL99 specifies that multiple triggers should be fired in
SQL:1999 specifies that multiple triggers should be fired in
time-of-creation order. <productname>PostgreSQL</productname> uses
name order, which was judged more convenient to work with.
</para>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_type.sgml,v 1.52 2004/06/25 21:55:50 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/create_type.sgml,v 1.53 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -535,7 +535,7 @@ CREATE TABLE big_objs (
<para>
This <command>CREATE TYPE</command> command is a
<productname>PostgreSQL</productname> extension. There is a
<command>CREATE TYPE</command> statement in SQL99 that is rather
<command>CREATE TYPE</command> statement in SQL:1999 and later that is rather
different in detail.
</para>
</refsect1>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/drop_sequence.sgml,v 1.20 2003/11/29 19:51:38 pgsql Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/drop_sequence.sgml,v 1.21 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -82,7 +82,7 @@ DROP SEQUENCE serial;
<title>Compatibility</title>
<para>
There is no <command>DROP SEQUENCE</command> statement in the SQL standard.
<command>DROP SEQUENCE</command> conforms with <acronym>SQL:2003</acronym>.
</para>
</refsect1>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/release_savepoint.sgml,v 1.2 2004/08/24 00:06:51 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/release_savepoint.sgml,v 1.3 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -108,11 +108,10 @@ COMMIT;
<title>Compatibility</title>
<para>
The SQL2003 standard specifies that the keyword
<literal>SAVEPOINT</literal> is mandatory.
<productname>PostgreSQL</productname> allows the
<literal>SAVEPOINT</literal> keyword to be omitted. Otherwise, this
command is fully conforming.
This command conforms to the SQL:2003 standard. The standard
specifies that the key word <literal>SAVEPOINT</literal> is
mandatory, but <productname>PostgreSQL</productname> allows it to
be omitted.
</para>
</refsect1>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/rollback_to.sgml,v 1.4 2004/09/20 00:04:19 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/rollback_to.sgml,v 1.5 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -128,15 +128,14 @@ COMMIT;
<title>Compatibility</title>
<para>
The SQL2003 standard specifies that the keyword
<literal>SAVEPOINT</> is mandatory. <productname>PostgreSQL</> and
<productname>Oracle</> allow the <literal>SAVEPOINT</literal>
keyword to be omitted. SQL2003 allows only <literal>WORK</>, not
<literal>TRANSACTION</>, as a noise word after
<literal>ROLLBACK</>. Also, SQL2003 has an optional clause
The SQL:2003 standard specifies that the key word
<literal>SAVEPOINT</> is mandatory, but <productname>PostgreSQL</>
and <productname>Oracle</> allow it to be omitted. SQL:2003 allows
only <literal>WORK</>, not <literal>TRANSACTION</>, as a noise word
after <literal>ROLLBACK</>. Also, SQL:2003 has an optional clause
<literal>AND [ NO ] CHAIN</> which is not currently supported by
<productname>PostgreSQL</>. Otherwise, this command is fully
conforming.
<productname>PostgreSQL</>. Otherwise, this command conforms to
the SQL standard.
</para>
</refsect1>

View File

@@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/select.sgml,v 1.77 2004/05/16 23:22:08 neilc Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/select.sgml,v 1.78 2004/11/27 21:27:07 petere Exp $
PostgreSQL documentation
-->
@@ -1045,7 +1045,7 @@ SELECT distributors.* FROM distributors d, distributors distributors;
<title>Namespace Available to <literal>GROUP BY</literal> and <literal>ORDER BY</literal></title>
<para>
In the SQL92 standard, an <literal>ORDER BY</literal> clause may
In the SQL-92 standard, an <literal>ORDER BY</literal> clause may
only use result column names or numbers, while a <literal>GROUP
BY</literal> clause may only use expressions based on input column
names. <productname>PostgreSQL</productname> extends each of
@@ -1058,11 +1058,11 @@ SELECT distributors.* FROM distributors d, distributors distributors;
</para>
<para>
SQL99 uses a slightly different definition which is not entirely upward
SQL:1999 uses a slightly different definition which is not entirely upward
compatible
with SQL92. In most cases, however, <productname>PostgreSQL</productname>
with SQL-92. In most cases, however, <productname>PostgreSQL</productname>
will interpret an <literal>ORDER BY</literal> or <literal>GROUP
BY</literal> expression the same way SQL99 does.
BY</literal> expression the same way SQL:1999 does.
</para>
</refsect2>