diff options
| author | Peter Eisentraut <peter_e@gmx.net> | 2004-11-27 21:27:08 +0000 |
|---|---|---|
| committer | Peter Eisentraut <peter_e@gmx.net> | 2004-11-27 21:27:08 +0000 |
| commit | 49cbef79479095caa5c8174b5d198265817c7856 (patch) | |
| tree | 37194a7002c41b93e816d816b56ffccca4de2642 /doc/src | |
| parent | 90c3ebe4d7cf0bb88193a3d4bfca4b036ef791bb (diff) | |
Update of conformance information to SQL:2003
by Troels Arvin, Simon Riggs, Elein Mustain
Make spelling of SQL standard names uniform.
Diffstat (limited to 'doc/src')
| -rw-r--r-- | doc/src/sgml/array.sgml | 8 | ||||
| -rw-r--r-- | doc/src/sgml/datatype.sgml | 19 | ||||
| -rw-r--r-- | doc/src/sgml/ddl.sgml | 4 | ||||
| -rw-r--r-- | doc/src/sgml/errcodes.sgml | 4 | ||||
| -rw-r--r-- | doc/src/sgml/features.sgml | 116 | ||||
| -rw-r--r-- | doc/src/sgml/func.sgml | 41 | ||||
| -rw-r--r-- | doc/src/sgml/information_schema.sgml | 6 | ||||
| -rw-r--r-- | doc/src/sgml/intro.sgml | 6 | ||||
| -rw-r--r-- | doc/src/sgml/keywords.sgml | 8 | ||||
| -rw-r--r-- | doc/src/sgml/ref/alter_domain.sgml | 4 | ||||
| -rw-r--r-- | doc/src/sgml/ref/alter_sequence.sgml | 21 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_cast.sgml | 6 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_function.sgml | 4 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_sequence.sgml | 12 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_table.sgml | 15 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_table_as.sgml | 6 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_trigger.sgml | 12 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_type.sgml | 4 | ||||
| -rw-r--r-- | doc/src/sgml/ref/drop_sequence.sgml | 4 | ||||
| -rw-r--r-- | doc/src/sgml/ref/release_savepoint.sgml | 11 | ||||
| -rw-r--r-- | doc/src/sgml/ref/rollback_to.sgml | 17 | ||||
| -rw-r--r-- | doc/src/sgml/ref/select.sgml | 10 | ||||
| -rw-r--r-- | doc/src/sgml/release.sgml | 10 |
23 files changed, 188 insertions, 160 deletions
diff --git a/doc/src/sgml/array.sgml b/doc/src/sgml/array.sgml index 2307ad47fd5..ff8d6be531e 100644 --- a/doc/src/sgml/array.sgml +++ b/doc/src/sgml/array.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/array.sgml,v 1.39 2004/11/15 06:32:13 neilc Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/array.sgml,v 1.40 2004/11/27 21:27:05 petere Exp $ --> <sect1 id="arrays"> <title>Arrays</title> @@ -63,8 +63,10 @@ CREATE TABLE tictactoe ( </para> <para> - An alternative, SQL99-standard syntax may be used for one-dimensional arrays. - <structfield>pay_by_quarter</structfield> could have been defined as: + 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: <programlisting> pay_by_quarter integer ARRAY[4], </programlisting> diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml index 6e01bfd94b1..dd406e12e07 100644 --- a/doc/src/sgml/datatype.sgml +++ b/doc/src/sgml/datatype.sgml @@ -1,5 +1,5 @@ <!-- -$PostgreSQL: pgsql/doc/src/sgml/datatype.sgml,v 1.150 2004/09/20 22:48:25 tgl Exp $ +$PostgreSQL: pgsql/doc/src/sgml/datatype.sgml,v 1.151 2004/11/27 21:27:05 petere Exp $ --> <chapter id="datatype"> @@ -1744,9 +1744,20 @@ January 8 04:05:06 1999 PST </para> <para> - For <type>timestamp [without time zone]</type>, any explicit time - zone specified in the input is silently ignored. That is, the - resulting date/time value is derived from the explicit date/time + The <acronym>SQL</acronym> standard differentiates <type>timestamp without time zone</type> + and <type>timestamp with time zone</type> literals by the existence of a + <quote>+</quote>; or <quote>-</quote>. Hence, according to the standard, + <programlisting>TIMESTAMP '2004-10-19 10:23:54'</programlisting> + is a <type>timestamp without time zone</type>, while + <programlisting>TIMESTAMP '2004-10-19 10:23:54+02'</programlisting> + is a <type>timestamp with time zone</type>. + <productname>PostgreSQL</productname> + differs from the standard by requiring that <type>timestamp with time zone</type> + literals be explicitly typed: + <programlisting>TIMESTAMP WITH TIME ZONE '2004-10-19 10:23:54+02'</programlisting> + If a literal is not explicitly indicated as being of <type>timestamp with time zone</type>, + PostgreSQL will silently ignore any time zone indication in the literal. + That is, the resulting date/time value is derived from the date/time fields in the input value, and is not adjusted for time zone. </para> diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index fcae34f4a50..fd18cd2a9ec 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/ddl.sgml,v 1.32 2004/11/15 06:32:13 neilc Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/ddl.sgml,v 1.33 2004/11/27 21:27:06 petere Exp $ --> <chapter id="ddl"> <title>Data Definition</title> @@ -1069,7 +1069,7 @@ SELECT name, altitude <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 SQL99 + 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 diff --git a/doc/src/sgml/errcodes.sgml b/doc/src/sgml/errcodes.sgml index bc900283f54..1df05a8b6bd 100644 --- a/doc/src/sgml/errcodes.sgml +++ b/doc/src/sgml/errcodes.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/errcodes.sgml,v 1.10 2004/11/15 06:32:13 neilc Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/errcodes.sgml,v 1.11 2004/11/27 21:27:06 petere Exp $ --> <appendix id="errcodes-appendix"> <title><productname>PostgreSQL</productname> Error Codes</title> @@ -125,7 +125,7 @@ <row> <entry>Class 02</entry> -<entry>No Data — this is also a warning class per SQL99</entry> +<entry>No Data — this is also a warning class per SQL:1999</entry> </row> <row> diff --git a/doc/src/sgml/features.sgml b/doc/src/sgml/features.sgml index bea6aa6f9c8..2e3a4983f1c 100644 --- a/doc/src/sgml/features.sgml +++ b/doc/src/sgml/features.sgml @@ -1,5 +1,5 @@ <!-- -$PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.22 2003/11/29 19:51:37 pgsql Exp $ +$PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.23 2004/11/27 21:27:06 petere Exp $ --> <appendix id="features"> @@ -7,68 +7,96 @@ $PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.22 2003/11/29 19:51:37 pgsql E <para> This section attempts to outline to what extent - <productname>PostgreSQL</productname> conforms to the SQL standard. - Full compliance to the standard or a complete statement about the - compliance to the standard is complicated and not particularly - useful, so this section can only give an overview. - </para> + <productname>PostgreSQL</productname> conforms to the current SQL + standard. The following information is not a full statement of + conformance, but it presents the main topics in as much detail as is + both reasonable and useful for users. + </para> <para> The formal name of the SQL standard is ISO/IEC 9075 <quote>Database Language SQL</quote>. A revised version of the standard is released - from time to time; the most recent one appearing in 1999. That - version is referred to as ISO/IEC 9075:1999, or informally as SQL99. - The version prior to that was SQL92. - <productname>PostgreSQL</productname> development tends to aim for + from time to time; the most recent one appearing in late 2003. That + version is referred to as ISO/IEC 9075:2003, or simply as SQL:2003. + The versions prior to that were SQL:1999 and SQL-92. Each version + replaces the previous one, so claims of conformance to earlier + versions have no official merit. + <productname>PostgreSQL</productname> development aims for conformance with the latest official version of the standard where such conformance does not contradict traditional features or common - sense. At the time of this writing, balloting is under way for a - new revision of the standard, which, if approved, will eventually - become the conformance target for future - <productname>PostgreSQL</productname> development. + sense. The PostgreSQL project was not represented in the ISO/IEC + 9075 Working Group during the preparation of SQL:2003. Even so, + many of the features required by SQL:2003 are already supported, + though sometimes with slightly differing syntax or function. + Further moves towards conformance may be expected in later releases. + </para> + + <para> + <acronym>SQL-92</acronym> defined three feature sets for + conformance: Entry, Intermediate, and Full. Most database + management systems claiming <acronym>SQL</acronym> standard + conformance were conforming at only the Entry level, since the + entire set of features in the Intermediate and Full levels was + either too voluminous or in conflict with legacy behaviors. </para> <para> - <acronym>SQL92</acronym> defined three feature sets for conformance: - Entry, Intermediate, and Full. Most database management systems claiming - <acronym>SQL</acronym> standard conformance were conforming at only - the Entry level, since the entire set of features in the - Intermediate and Full levels was either too voluminous or in - conflict with legacy behaviors. + Starting with <acronym>SQL:1999</acronym>, the SQL standard defines + a large set of individual features rather than the ineffectively + broad three levels found in <acronym>SQL-92</acronym>. A large + subset of these features represents the <quote>Core</quote> + features, which every conforming SQL implementation must supply. + The rest of the features are purely optional. Some optional + features are grouped together to form <quote>packages</quote>, which + SQL implementations can claim conformance to, thus claiming + conformance to particular groups of features. </para> <para> - <acronym>SQL99</acronym> defines a large set of individual features - rather than the ineffectively broad three levels found in - <acronym>SQL92</acronym>. A large subset of these features - represents the <quote>core</quote> features, which every conforming - SQL implementation must supply. The rest of the features are purely - optional. Some optional features are grouped together to form - <quote>packages</quote>, which SQL implementations can claim - conformance to, thus claiming conformance to particular groups of - features. + The <acronym>SQL:2003</acronym> standard is also split into a number + of parts. Each is known by a shorthand name. Note that these parts + are not consecutively numbered. + + <itemizedlist> + <listitem><para>ISO/IEC 9075-1 Framework (<acronym>SQL/Framework</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-2 Foundation (<acronym>SQL/Foundation</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-3 Call Level Interface (<acronym>SQL/CLI</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-4 Persistent Stored Modules (<acronym>SQL/PSM</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-9 Management of External Data (<acronym>SQL/MED</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-10 Object Language Bindings (<acronym>SQL/OLB</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-11 Information and Definition Schemas (<acronym>SQL/Schemata</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-13 Routines and Types using the Java Language (<acronym>SQL/JRT</acronym>)</para></listitem> + <listitem><para>ISO/IEC 9075-14 XML-related specifications (<acronym>SQL/XML</acronym>)</para></listitem> + </itemizedlist> </para> <para> - The <acronym>SQL99</acronym> standard is also split into 5 parts: - Framework, Foundation, Call Level Interface, Persistent Stored - Modules, and Host Language Bindings. - <productname>PostgreSQL</productname> only covers parts 1, 2, and 5. + <productname>PostgreSQL</productname> covers parts 1, 2, and 11. Part 3 is similar to the ODBC interface, and part 4 is similar to the <application>PL/pgSQL</application> programming language, but - exact conformance is not specifically intended in either case. + exact conformance is not specifically intended or verified in either + case. + </para> + + <para> + PostgreSQL supports most of the major features of SQL:2003. Out of + 164 mandatory features required for full Core conformance, + PostgreSQL conforms to at least 150. In addition, there is a long + list of supported optional features. It may be worth noting that at + the time of writing, no current version of any database management + system claims full conformance to Core SQL:2003. </para> <para> In the following two sections, we provide a list of those features that <productname>PostgreSQL</productname> supports, followed by a - list of the features defined in SQL99 which are not yet supported in - <productname>PostgreSQL</productname>. Both of these lists are - approximate: There may be minor details that are nonconforming for a - feature that is listed as supported, and large parts of an - unsupported feature may in fact be implemented. The main body of - the documentation always contains the most accurate information - about what does and does not work. + list of the features defined in <acronym>SQL:2003</acronym> which + are not yet supported in <productname>PostgreSQL</productname>. + Both of these lists are approximate: There may be minor details that + are nonconforming for a feature that is listed as supported, and + large parts of an unsupported feature may in fact be implemented. + The main body of the documentation always contains the most accurate + information about what does and does not work. </para> <note> @@ -79,7 +107,7 @@ $PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.22 2003/11/29 19:51:37 pgsql E </para> </note> - <sect1 id="features-sql99"> + <sect1 id="features-sql-standard"> <title>Supported Features</title> <para> @@ -101,11 +129,11 @@ $PostgreSQL: pgsql/doc/src/sgml/features.sgml,v 2.22 2003/11/29 19:51:37 pgsql E </para> </sect1> - <sect1 id="unsupported-features-sql99"> + <sect1 id="unsupported-features-sql-standard"> <title>Unsupported Features</title> <para> - The following features defined in <acronym>SQL99</acronym> are not + The following features defined in <acronym>SQL:2003</acronym> are not implemented in this release of <productname>PostgreSQL</productname>. In a few cases, equivalent functionality is available. diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 2549c516db9..111000086d8 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -1,5 +1,5 @@ <!-- -$PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.223 2004/11/15 06:32:13 neilc Exp $ +$PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.224 2004/11/27 21:27:06 petere Exp $ PostgreSQL documentation --> @@ -2479,16 +2479,15 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation> </indexterm> <para> - 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 - <acronym>SQL99</acronym> - <function>SIMILAR TO</function> operator, and - <acronym>POSIX</acronym>-style regular expressions. + 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 <literal>>SIMILAR TO</literal> operator (since + SQL:1999), and <acronym>POSIX</acronym>-style regular expressions. Additionally, a pattern matching function, <function>substring</function>, is available, using either - <acronym>SQL99</acronym>-style or POSIX-style regular expressions. + <literal>SIMILAR TO</literal>-style or POSIX-style regular + expressions. </para> <tip> @@ -2595,11 +2594,10 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation> </sect2> - <sect2 id="functions-sql99-regexp"> - <title><function>SIMILAR TO</function> and <acronym>SQL99</acronym> - Regular Expressions</title> + <sect2 id="functions-similarto-regexp"> + <title><function>SIMILAR TO</function> Regular Expressions</title> - <indexterm zone="functions-sql99-regexp"> + <indexterm zone="functions-similarto-regexp"> <primary>regular expression</primary> <!-- <seealso>pattern matching</seealso> breaks index build --> </indexterm> @@ -2618,14 +2616,13 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation> </synopsis> <para> - The <function>SIMILAR TO</function> operator returns true or false - depending on whether its pattern matches the given string. It is - much like <function>LIKE</function>, except that it interprets the - pattern using <acronym>SQL99</acronym>'s definition of a regular - expression. - <acronym>SQL99</acronym>'s regular expressions are a curious cross - between <function>LIKE</function> notation and common regular expression - notation. + The <function>SIMILAR TO</function> operator returns true or + false depending on whether its pattern matches the given string. + It is much like <function>LIKE</function>, except that it + interprets the pattern using the SQL standard's definition of a + regular expression. SQL regular expressions are a curious cross + between <function>LIKE</function> notation and common regular + expression notation. </para> <para> @@ -2704,7 +2701,7 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation> <function>substring(<parameter>string</parameter> from <replaceable>pattern</replaceable> for <replaceable>escape-character</replaceable>)</function>, provides - extraction of a substring that matches a <acronym>SQL99</acronym> + extraction of a substring that matches an SQL regular expression pattern. As with <literal>SIMILAR TO</>, the specified pattern must match to the entire data string, else the function fails and returns null. To indicate the part of the diff --git a/doc/src/sgml/information_schema.sgml b/doc/src/sgml/information_schema.sgml index 4a2e8f581c5..b617d014e9a 100644 --- a/doc/src/sgml/information_schema.sgml +++ b/doc/src/sgml/information_schema.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/information_schema.sgml,v 1.18 2004/11/15 06:32:13 neilc Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/information_schema.sgml,v 1.19 2004/11/27 21:27:06 petere Exp $ --> <chapter id="information-schema"> <title>The Information Schema</title> @@ -3267,7 +3267,7 @@ ORDER BY c.ordinal_position; <entry> The year the standard referenced in <literal>sql_language_source</literal> was approved; currently - <literal>1999</> + <literal>2003</> </entry> </row> @@ -3276,7 +3276,7 @@ ORDER BY c.ordinal_position; <entry><type>character_data</type></entry> <entry> The standard conformance level for the language binding. For - ISO 9075:1999 this is always <literal>CORE</literal>. + ISO 9075:2003 this is always <literal>CORE</literal>. </entry> </row> diff --git a/doc/src/sgml/intro.sgml b/doc/src/sgml/intro.sgml index 2687fdb0787..ec0e4398da6 100644 --- a/doc/src/sgml/intro.sgml +++ b/doc/src/sgml/intro.sgml @@ -1,5 +1,5 @@ <!-- -$PostgreSQL: pgsql/doc/src/sgml/intro.sgml,v 1.25 2004/08/08 01:52:14 momjian Exp $ +$PostgreSQL: pgsql/doc/src/sgml/intro.sgml,v 1.26 2004/11/27 21:27:06 petere Exp $ --> <preface id="preface"> @@ -98,8 +98,8 @@ $PostgreSQL: pgsql/doc/src/sgml/intro.sgml,v 1.25 2004/08/08 01:52:14 momjian Ex <para> <productname>PostgreSQL</productname> is an open-source descendant - of this original Berkeley code. It supports SQL92, SQL99 and - SQL2003 and offers many modern features: + of this original Berkeley code. It supports a large part of the SQL:2003 + standard and offers many modern features: <itemizedlist spacing="compact"> <listitem> diff --git a/doc/src/sgml/keywords.sgml b/doc/src/sgml/keywords.sgml index 7fdadaddad8..8991140717b 100644 --- a/doc/src/sgml/keywords.sgml +++ b/doc/src/sgml/keywords.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/keywords.sgml,v 2.14 2004/10/18 17:09:03 petere Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/keywords.sgml,v 2.15 2004/11/27 21:27:06 petere Exp $ --> <appendix id="sql-keywords-appendix"> <title><acronym>SQL</acronym> Key Words</title> @@ -86,9 +86,9 @@ <row> <entry>Key Word</entry> <entry><productname>PostgreSQL</productname></entry> - <entry><acronym>SQL</acronym> 2003</entry> - <entry><acronym>SQL</acronym> 1999</entry> - <entry><acronym>SQL</acronym> 1992</entry> + <entry>SQL:2003</entry> + <entry>SQL:1999</entry> + <entry>SQL-92</entry> </row> </thead> diff --git a/doc/src/sgml/ref/alter_domain.sgml b/doc/src/sgml/ref/alter_domain.sgml index 7ecee65021c..7d5f050196e 100644 --- a/doc/src/sgml/ref/alter_domain.sgml +++ b/doc/src/sgml/ref/alter_domain.sgml @@ -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> diff --git a/doc/src/sgml/ref/alter_sequence.sgml b/doc/src/sgml/ref/alter_sequence.sgml index 8337e279075..a96b1d722af 100644 --- a/doc/src/sgml/ref/alter_sequence.sgml +++ b/doc/src/sgml/ref/alter_sequence.sgml @@ -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> diff --git a/doc/src/sgml/ref/create_cast.sgml b/doc/src/sgml/ref/create_cast.sgml index 1687d6bb7f2..c36f12675bd 100644 --- a/doc/src/sgml/ref/create_cast.sgml +++ b/doc/src/sgml/ref/create_cast.sgml @@ -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. diff --git a/doc/src/sgml/ref/create_function.sgml b/doc/src/sgml/ref/create_function.sgml index a3e266729be..7d8d01f4cd3 100644 --- a/doc/src/sgml/ref/create_function.sgml +++ b/doc/src/sgml/ref/create_function.sgml @@ -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. diff --git a/doc/src/sgml/ref/create_sequence.sgml b/doc/src/sgml/ref/create_sequence.sgml index d380d32a729..1afaa0ba295 100644 --- a/doc/src/sgml/ref/create_sequence.sgml +++ b/doc/src/sgml/ref/create_sequence.sgml @@ -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 <data type></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> diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml index 8b18d837c96..68cce936db4 100644 --- a/doc/src/sgml/ref/create_table.sgml +++ b/doc/src/sgml/ref/create_table.sgml @@ -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> diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml index 2e0115e87db..8565b13d015 100644 --- a/doc/src/sgml/ref/create_table_as.sgml +++ b/doc/src/sgml/ref/create_table_as.sgml @@ -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"> diff --git a/doc/src/sgml/ref/create_trigger.sgml b/doc/src/sgml/ref/create_trigger.sgml index 46b98ca76e5..f712636f49e 100644 --- a/doc/src/sgml/ref/create_trigger.sgml +++ b/doc/src/sgml/ref/create_trigger.sgml @@ -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> diff --git a/doc/src/sgml/ref/create_type.sgml b/doc/src/sgml/ref/create_type.sgml index b7d1ac64e0a..ef6f93b0f27 100644 --- a/doc/src/sgml/ref/create_type.sgml +++ b/doc/src/sgml/ref/create_type.sgml @@ -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> diff --git a/doc/src/sgml/ref/drop_sequence.sgml b/doc/src/sgml/ref/drop_sequence.sgml index 6d8d4084a22..f519ebedee7 100644 --- a/doc/src/sgml/ref/drop_sequence.sgml +++ b/doc/src/sgml/ref/drop_sequence.sgml @@ -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> diff --git a/doc/src/sgml/ref/release_savepoint.sgml b/doc/src/sgml/ref/release_savepoint.sgml index ca31c8dfd8b..2237aa32dfc 100644 --- a/doc/src/sgml/ref/release_savepoint.sgml +++ b/doc/src/sgml/ref/release_savepoint.sgml @@ -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> diff --git a/doc/src/sgml/ref/rollback_to.sgml b/doc/src/sgml/ref/rollback_to.sgml index f96baec3985..0b87dc1a6bb 100644 --- a/doc/src/sgml/ref/rollback_to.sgml +++ b/doc/src/sgml/ref/rollback_to.sgml @@ -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> diff --git a/doc/src/sgml/ref/select.sgml b/doc/src/sgml/ref/select.sgml index 5c6206a303e..06dd5594a00 100644 --- a/doc/src/sgml/ref/select.sgml +++ b/doc/src/sgml/ref/select.sgml @@ -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> diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml index 70d7dc3c270..d16aa0693bc 100644 --- a/doc/src/sgml/release.sgml +++ b/doc/src/sgml/release.sgml @@ -1,5 +1,5 @@ <!-- -$PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.312 2004/11/22 07:30:22 neilc Exp $ +$PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.313 2004/11/27 21:27:06 petere Exp $ --> <appendix id="release"> @@ -1514,13 +1514,13 @@ $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.312 2004/11/22 07:30:22 neilc E Change <function>ln()</>, <function>log()</>, <function>power()</>, and <function>sqrt()</> to emit the correct <literal>SQLSTATE</> error codes for certain error conditions, as - specified by SQL2003 (Neil) + specified by SQL:2003 (Neil) </para> </listitem> <listitem> <para> - Add <function>width_bucket()</> function as defined by SQL2003 (Neil) + Add <function>width_bucket()</> function as defined by SQL:2003 (Neil) </para> </listitem> @@ -3706,7 +3706,7 @@ DROP SCHEMA information_schema CASCADE; <itemizedlist> <listitem> - <para>Make <command>CREATE SEQUENCE</command> grammar more conforming to SQL 2003 (Neil)</para> + <para>Make <command>CREATE SEQUENCE</command> grammar more conforming to SQL:2003 (Neil)</para> </listitem> <listitem> @@ -3781,7 +3781,7 @@ DROP SCHEMA information_schema CASCADE; <listitem> <para> Allow copying table schema using <literal>LIKE - <replaceable>subtable</replaceable></literal>, also SQL 2003 + <replaceable>subtable</replaceable></literal>, also SQL:2003 feature <literal>INCLUDING DEFAULTS</literal> (Rod) </para> </listitem> |
