This doc patch replaces all inappropriate references to SQL:1999 when it is used as if it were the latest (and/or still valid) SQL standard.
SQL:2003 is used in its place. Best Regards, Simon Riggs
Index: array.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/array.sgml,v retrieving revision 1.43 diff -c -c -r1.43 array.sgml *** array.sgml 6 Feb 2005 20:59:30 -0000 1.43 --- array.sgml 12 Jul 2005 20:31:31 -0000 *************** *** 63,69 **** </para> <para> ! An alternative syntax, which conforms to the SQL:1999 standard, may be used for one-dimensional arrays. <structfield>pay_by_quarter</structfield> could have been defined as: --- 63,69 ---- </para> <para> ! An alternative syntax, which conforms to the SQL:2003 standard, may be used for one-dimensional arrays. <structfield>pay_by_quarter</structfield> could have been defined as: Index: ddl.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ddl.sgml,v retrieving revision 1.41 diff -c -c -r1.41 ddl.sgml *** ddl.sgml 13 Jun 2005 02:40:01 -0000 1.41 --- ddl.sgml 12 Jul 2005 20:31:33 -0000 *************** *** 1122,1128 **** <para> In previous versions of <productname>PostgreSQL</productname>, the default behavior was not to include child tables in queries. This was ! found to be error prone and is also in violation of the SQL:1999 standard. Under the old syntax, to get the sub-tables you append <literal>*</literal> to the table name. For example --- 1122,1128 ---- <para> In previous versions of <productname>PostgreSQL</productname>, the default behavior was not to include child tables in queries. This was ! found to be error prone and is also in violation of the SQL:2003 standard. Under the old syntax, to get the sub-tables you append <literal>*</literal> to the table name. For example Index: ecpg.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v retrieving revision 1.64 diff -c -c -r1.64 ecpg.sgml *** ecpg.sgml 20 May 2005 12:36:48 -0000 1.64 --- ecpg.sgml 12 Jul 2005 20:31:35 -0000 *************** *** 1146,1153 **** The fields <literal>sqlca.sqlstate</literal> and <literal>sqlca.sqlcode</literal> are two different schemes that provide error codes. Both are specified in the SQL standard, but ! <literal>SQLCODE</literal> has been marked deprecated in the 1992 ! edition of the standard and has been dropped in the 1999 edition. Therefore, new applications are strongly encouraged to use <literal>SQLSTATE</literal>. </para> --- 1146,1153 ---- The fields <literal>sqlca.sqlstate</literal> and <literal>sqlca.sqlcode</literal> are two different schemes that provide error codes. Both are specified in the SQL standard, but ! <literal>SQLCODE</literal> has been marked deprecated in SQL-92 ! edition of the standard and has been dropped in later editions. Therefore, new applications are strongly encouraged to use <literal>SQLSTATE</literal>. </para> Index: errcodes.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/errcodes.sgml,v retrieving revision 1.13 diff -c -c -r1.13 errcodes.sgml *** errcodes.sgml 26 Jun 2005 19:16:04 -0000 1.13 --- errcodes.sgml 12 Jul 2005 20:31:36 -0000 *************** *** 127,133 **** <row> <entry>Class 02</entry> ! <entry>No Data — this is also a warning class per SQL:1999</entry> </row> <row> --- 127,133 ---- <row> <entry>Class 02</entry> ! <entry>No Data — this is also a warning class per SQL:2003</entry> </row> <row> Index: func.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/func.sgml,v retrieving revision 1.260 diff -c -c -r1.260 func.sgml *** func.sgml 26 Jun 2005 22:05:35 -0000 1.260 --- func.sgml 12 Jul 2005 20:31:59 -0000 *************** *** 2515,2522 **** There are three separate approaches to pattern matching provided by <productname>PostgreSQL</productname>: the traditional <acronym>SQL</acronym> <function>LIKE</function> operator, the ! more recent <function>SIMILAR TO</function> operator (added in ! SQL:1999), and <acronym>POSIX</acronym>-style regular expressions. Additionally, a pattern matching function, <function>substring</function>, is available, using either <function>SIMILAR TO</function>-style or POSIX-style regular --- 2515,2522 ---- There are three separate approaches to pattern matching provided by <productname>PostgreSQL</productname>: the traditional <acronym>SQL</acronym> <function>LIKE</function> operator, the ! more recent <function>SIMILAR TO</function> operator (part of ! SQL:2003), and <acronym>POSIX</acronym>-style regular expressions. Additionally, a pattern matching function, <function>substring</function>, is available, using either <function>SIMILAR TO</function>-style or POSIX-style regular Index: sql.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/sql.sgml,v retrieving revision 1.36 diff -c -c -r1.36 sql.sgml *** sql.sgml 28 Apr 2005 21:47:09 -0000 1.36 --- sql.sgml 12 Jul 2005 20:31:59 -0000 *************** *** 98,105 **** is under development. It is planned to make <acronym>SQL</acronym> a Turing-complete language, i.e. all computable queries (e.g. recursive queries) will be ! possible. This is a very complex task and therefore the completion of ! the new standard can not be expected before 1999. </para> <sect1 id="rel-model"> --- 98,104 ---- is under development. It is planned to make <acronym>SQL</acronym> a Turing-complete language, i.e. all computable queries (e.g. recursive queries) will be ! possible. This has now been completed as SQL:2003. </para> <sect1 id="rel-model"> Index: ref/alter_domain.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/alter_domain.sgml,v retrieving revision 1.15 diff -c -c -r1.15 alter_domain.sgml *** ref/alter_domain.sgml 31 May 2005 14:48:47 -0000 1.15 --- ref/alter_domain.sgml 12 Jul 2005 20:31:59 -0000 *************** *** 203,209 **** <title>Compatibility</title> <para> ! 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> --- 203,209 ---- <title>Compatibility</title> <para> ! The <command>ALTER DOMAIN</command> statement is compatible with SQL:2003, except for the <literal>OWNER</> variant, which is a <productname>PostgreSQL</productname> extension. </para> Index: ref/create_cast.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/create_cast.sgml,v retrieving revision 1.20 diff -c -c -r1.20 create_cast.sgml *** ref/create_cast.sgml 13 Dec 2004 18:05:10 -0000 1.20 --- ref/create_cast.sgml 12 Jul 2005 20:31:59 -0000 *************** *** 298,305 **** <title>Compatibility</title> <para> ! 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. --- 298,305 ---- <title>Compatibility</title> <para> ! The <command>CREATE CAST</command> command conforms to SQL:2003, ! except that SQL:2003 does not make provisions for binary-compatible types or extra arguments to implementation functions. <literal>AS IMPLICIT</> is a <productname>PostgreSQL</productname> extension, too. Index: ref/create_function.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/create_function.sgml,v retrieving revision 1.65 diff -c -c -r1.65 create_function.sgml *** ref/create_function.sgml 31 Mar 2005 22:45:59 -0000 1.65 --- ref/create_function.sgml 12 Jul 2005 20:31:59 -0000 *************** *** 478,484 **** <title>Compatibility</title> <para> ! 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. --- 478,484 ---- <title>Compatibility</title> <para> ! A <command>CREATE FUNCTION</command> command is defined in SQL:2003. The <productname>PostgreSQL</productname> version is similar but not fully compatible. The attributes are not portable, neither are the different available languages. Index: ref/create_table.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/create_table.sgml,v retrieving revision 1.92 diff -c -c -r1.92 create_table.sgml *** ref/create_table.sgml 2 Feb 2005 06:35:59 -0000 1.92 --- ref/create_table.sgml 12 Jul 2005 20:32:01 -0000 *************** *** 860,866 **** <para> The <command>CREATE TABLE</command> command conforms to SQL-92 and ! to a subset of SQL:1999, with exceptions listed below. </para> <refsect2> --- 860,866 ---- <para> The <command>CREATE TABLE</command> command conforms to SQL-92 and ! to a subset of SQL:2003, with exceptions listed below. </para> <refsect2> *************** *** 938,945 **** <para> Multiple inheritance via the <literal>INHERITS</literal> clause is 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> --- 938,945 ---- <para> Multiple inheritance via the <literal>INHERITS</literal> clause is a <productname>PostgreSQL</productname> language extension. ! SQL:2003 defines single inheritance using a ! different syntax and different semantics. SQL:2003-style inheritance is not yet supported by <productname>PostgreSQL</productname>. </para> Index: ref/create_trigger.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/create_trigger.sgml,v retrieving revision 1.40 diff -c -c -r1.40 create_trigger.sgml *** ref/create_trigger.sgml 27 Nov 2004 21:27:07 -0000 1.40 --- ref/create_trigger.sgml 12 Jul 2005 20:32:01 -0000 *************** *** 208,227 **** <para> The <command>CREATE TRIGGER</command> statement in <productname>PostgreSQL</productname> implements a subset of the ! SQL:1999 standard. (There are no provisions for triggers in SQL-92.) ! The following functionality is missing: <itemizedlist> <listitem> <para> ! SQL:1999 allows triggers to fire on updates to specific columns (e.g., <literal>AFTER UPDATE OF col1, col2</literal>). </para> </listitem> <listitem> <para> ! 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 --- 208,226 ---- <para> The <command>CREATE TRIGGER</command> statement in <productname>PostgreSQL</productname> implements a subset of the ! SQL:2003 standard. The following functionality is currently missing: <itemizedlist> <listitem> <para> ! SQL:2003 allows triggers to fire on updates to specific columns (e.g., <literal>AFTER UPDATE OF col1, col2</literal>). </para> </listitem> <listitem> <para> ! SQL:2003 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,241 **** <listitem> <para> <productname>PostgreSQL</productname> only allows the execution ! 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 --- 234,240 ---- <listitem> <para> <productname>PostgreSQL</productname> only allows the execution ! of a user-defined function for the triggered action. SQL:2003 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,252 **** </para> <para> ! 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> --- 245,251 ---- </para> <para> ! SQL:2003 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> Index: ref/create_type.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/create_type.sgml,v retrieving revision 1.55 diff -c -c -r1.55 create_type.sgml *** ref/create_type.sgml 1 May 2005 18:56:17 -0000 1.55 --- ref/create_type.sgml 12 Jul 2005 20:32:02 -0000 *************** *** 532,538 **** <para> This <command>CREATE TYPE</command> command is a <productname>PostgreSQL</productname> extension. There is a ! <command>CREATE TYPE</command> statement in SQL:1999 and later that is rather different in detail. </para> </refsect1> --- 532,538 ---- <para> This <command>CREATE TYPE</command> command is a <productname>PostgreSQL</productname> extension. There is a ! <command>CREATE TYPE</command> statement in SQL:2003 that is rather different in detail. </para> </refsect1> Index: ref/select.sgml =================================================================== RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/select.sgml,v retrieving revision 1.87 diff -c -c -r1.87 select.sgml *** ref/select.sgml 8 May 2005 03:08:05 -0000 1.87 --- ref/select.sgml 12 Jul 2005 20:32:03 -0000 *************** *** 1082,1088 **** <title>Namespace Available to <literal>GROUP BY</literal> and <literal>ORDER BY</literal></title> <para> ! 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 --- 1082,1088 ---- <title>Namespace Available to <literal>GROUP BY</literal> and <literal>ORDER BY</literal></title> <para> ! In the SQL:2003 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 *************** *** 1095,1105 **** </para> <para> ! SQL:1999 uses a slightly different definition which is not entirely upward ! compatible ! 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 SQL:1999 does. </para> </refsect2> --- 1095,1105 ---- </para> <para> ! SQL:2003 uses a slightly different definition which is not entirely upward ! compatible 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 SQL:2003 does. </para> </refsect2>
---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster