Commit 17ce9a0a authored by Thomas G. Lockhart's avatar Thomas G. Lockhart

Split list of SQL99 features into "Supported" and "Unsupported" lists.

parent 8080ac74
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 thomas Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.2 2002/06/19 06:11:36 thomas Exp $
--> -->
<appendix id="features"> <appendix id="features">
...@@ -13,17 +13,19 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -13,17 +13,19 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
compliance: basic, intermediate, and advanced. Most database compliance: basic, intermediate, and advanced. Most database
products claiming <acronym>SQL</acronym> standards compliance were products claiming <acronym>SQL</acronym> standards compliance were
compliant at only the basic level, since the entire set of compliant at only the basic level, since the entire set of
intermediate and advanced features was either to voluminous or in intermediate and advanced features was either too voluminous or in
conflict with legacy behaviors. conflict with legacy behaviors.
</para> </para>
<para> <para>
<acronym>SQL99</acronym> defines a large set of individual <acronym>SQL99</acronym> defines a large set of individual
features rather than the ineffectively broad three levels found in features rather than the ineffectively broad three levels found in
<acronym>SQL92</acronym>. We list the entire set of features <acronym>SQL92</acronym>. We provide a list of supported features,
defined in the standard, with comments on those features not yet followed by a list of the features defined in SQL99 which are not
implemented in <productname>PostgreSQL</productname>. yet supported in PostgreSQL.
</para>
<para>
<informaltable> <informaltable>
<tgroup cols="3"> <tgroup cols="3">
<thead> <thead>
...@@ -325,21 +327,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -325,21 +327,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>UPDATE privilege at the table level</entry> <entry>UPDATE privilege at the table level</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>E081-05</entry>
<entry>UPDATE privilege at the column level</entry>
<entry></entry>
</row>
<row> <row>
<entry>E081-06</entry> <entry>E081-06</entry>
<entry>REFERENCES privilege at the table level</entry> <entry>REFERENCES privilege at the table level</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>E081-07</entry>
<entry>REFERENCES privilege at the column level</entry>
<entry></entry>
</row>
<row> <row>
<entry>E081-08</entry> <entry>E081-08</entry>
<entry>WITH GRANT OPTION</entry> <entry>WITH GRANT OPTION</entry>
...@@ -433,33 +425,28 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -433,33 +425,28 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<row> <row>
<entry>E121-04</entry> <entry>E121-04</entry>
<entry>OPEN statement</entry> <entry>OPEN statement</entry>
<entry></entry> <entry>(cursor)</entry>
</row> </row>
<row> <row>
<entry>E121-06</entry> <entry>E121-06</entry>
<entry>Positioned UPDATE statement</entry> <entry>Positioned UPDATE statement</entry>
<entry></entry> <entry>(cursor)</entry>
</row> </row>
<row> <row>
<entry>E121-07</entry> <entry>E121-07</entry>
<entry>Positioned DELETE statement</entry> <entry>Positioned DELETE statement</entry>
<entry></entry> <entry>(cursor)</entry>
</row> </row>
<row> <row>
<entry>E121-08</entry> <entry>E121-08</entry>
<entry>CLOSE statement</entry> <entry>CLOSE statement</entry>
<entry></entry> <entry>(cursor)</entry>
</row> </row>
<row> <row>
<entry>E121-10</entry> <entry>E121-10</entry>
<entry>FETCH statement implicit NEXT</entry> <entry>FETCH statement implicit NEXT</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>E121-17</entry>
<entry>WITH HOLD cursors</entry>
<entry></entry>
</row>
<row> <row>
<entry>E131</entry> <entry>E131</entry>
<entry>Null value support (nulls in lieu of values)</entry> <entry>Null value support (nulls in lieu of values)</entry>
...@@ -538,11 +525,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -538,11 +525,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
clause</entry> clause</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>E152-02</entry>
<entry>SET TRANSACTION statement: READ ONLY and READ WRITE clauses</entry>
<entry></entry>
</row>
<row> <row>
<entry>E153</entry> <entry>E153</entry>
<entry>Updatable queries with subqueries</entry> <entry>Updatable queries with subqueries</entry>
...@@ -553,51 +535,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -553,51 +535,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>SQL comments using leading double minus</entry> <entry>SQL comments using leading double minus</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>E171</entry>
<entry>SQLSTATE support</entry>
<entry></entry>
</row>
<row>
<entry>E182</entry>
<entry>Module language</entry>
<entry></entry>
</row>
<row>
<entry>F021</entry>
<entry>Basic information schema</entry>
<entry></entry>
</row>
<row>
<entry>F021-01</entry>
<entry>COLUMNS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-02</entry>
<entry>TABLES view</entry>
<entry></entry>
</row>
<row>
<entry>F021-03</entry>
<entry>VIEWS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-04</entry>
<entry>TABLE_CONSTRAINTS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-05</entry>
<entry>REFERENTIAL_ CONSTRAINTS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-06</entry>
<entry>CHECK_CONSTRAINTS view</entry>
<entry></entry>
</row>
<row> <row>
<entry>F031</entry> <entry>F031</entry>
<entry>Basic schema manipulation</entry> <entry>Basic schema manipulation</entry>
...@@ -747,7 +684,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -747,7 +684,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
</row> </row>
<row> <row>
<entry>F131-02</entry> <entry>F131-02</entry>
<entry>Multiple tables supported in queries with grouped views</entry> <entry>Multiple tables supported in queries with grouped
views</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
...@@ -757,18 +695,20 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -757,18 +695,20 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
</row> </row>
<row> <row>
<entry>F131-04</entry> <entry>F131-04</entry>
<entry>Subqueries with GROUP BY and HAVING clauses and grouped views</entry> <entry>Subqueries with GROUP BY and HAVING clauses and grouped
views</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F131-05</entry> <entry>F131-05</entry>
<entry>Single row SELECT with GROUP BY and HAVING clauses and grouped views</entry> <entry>Single row SELECT with GROUP BY and HAVING clauses and
grouped views</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F181</entry> <entry>F181</entry>
<entry>Multiple module support</entry> <entry>Multiple module support</entry>
<entry></entry> <entry>Allow separate compilation modules in ecpg</entry>
</row> </row>
<row> <row>
<entry>F201</entry> <entry>F201</entry>
...@@ -845,41 +785,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -845,41 +785,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Expanded NULL predicate</entry> <entry>Expanded NULL predicate</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F501</entry>
<entry>Features and conformance views</entry>
<entry></entry>
</row>
<row>
<entry>F501-01</entry>
<entry>SQL_FEATURES view</entry>
<entry></entry>
</row>
<row>
<entry>F501-02</entry>
<entry>SQL_SIZING view</entry>
<entry></entry>
</row>
<row>
<entry>F501-03</entry>
<entry>SQL_LANGUAGES view</entry>
<entry></entry>
</row>
<row>
<entry>F812</entry>
<entry>Basic flagging</entry>
<entry></entry>
</row>
<row> <row>
<entry>S011</entry> <entry>S011</entry>
<entry>Distinct data types</entry> <entry>Distinct data types</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>S011-01</entry>
<entry>USER_DEFINED_TYPES view</entry>
<entry></entry>
</row>
<row> <row>
<entry>T321</entry> <entry>T321</entry>
<entry>Basic SQL-invoked routines</entry> <entry>Basic SQL-invoked routines</entry>
...@@ -890,46 +800,21 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -890,46 +800,21 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>User-defined functions with no overloading</entry> <entry>User-defined functions with no overloading</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T321-02</entry>
<entry>User-defined stored procedures with no overloading</entry>
<entry></entry>
</row>
<row> <row>
<entry>T321-03</entry> <entry>T321-03</entry>
<entry>Function invocation</entry> <entry>Function invocation</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T321-04</entry>
<entry>CALL statement</entry>
<entry></entry>
</row>
<row> <row>
<entry>T321-05</entry> <entry>T321-05</entry>
<entry>RETURN statement</entry> <entry>RETURN statement</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T321-06</entry>
<entry>ROUTINES view</entry>
<entry></entry>
</row>
<row>
<entry>T321-07</entry>
<entry>PARAMETERS view</entry>
<entry></entry>
</row>
<row> <row>
<entry>F032</entry> <entry>F032</entry>
<entry>CASCADE drop behavior</entry> <entry>CASCADE drop behavior</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F033</entry>
<entry>ALTER TABLE statement: DROP COLUMN clause</entry>
<entry></entry>
</row>
<row> <row>
<entry>F034</entry> <entry>F034</entry>
<entry>Extended REVOKE statement</entry> <entry>Extended REVOKE statement</entry>
...@@ -937,7 +822,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -937,7 +822,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
</row> </row>
<row> <row>
<entry>F034-01</entry> <entry>F034-01</entry>
<entry>REVOKE statement performed by other than the owner of a schema object</entry> <entry>REVOKE statement performed by other than the owner of a
schema object</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
...@@ -947,7 +833,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -947,7 +833,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
</row> </row>
<row> <row>
<entry>F034-03</entry> <entry>F034-03</entry>
<entry>REVOKE statement to revoke a privilege that the grantee has WITH GRANT OPTION</entry> <entry>REVOKE statement to revoke a privilege that the grantee
has WITH GRANT OPTION</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
...@@ -960,36 +847,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -960,36 +847,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Isolation levels other than SERIALIZABLE</entry> <entry>Isolation levels other than SERIALIZABLE</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F111-01</entry>
<entry>READ UNCOMMITTED isolation level</entry>
<entry></entry>
</row>
<row> <row>
<entry>F111-02</entry> <entry>F111-02</entry>
<entry>READ COMMITTED isolation level</entry> <entry>READ COMMITTED isolation level</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F111-03</entry>
<entry>REPEATABLE READ isolation level</entry>
<entry></entry>
</row>
<row>
<entry>F121</entry>
<entry>Basic diagnostics management</entry>
<entry></entry>
</row>
<row>
<entry>F121-01</entry>
<entry>GET DIAGNOSTICS statement</entry>
<entry></entry>
</row>
<row>
<entry>F121-02</entry>
<entry>SET TRANSACTION statement: DIAGNOSTICS SIZE clause</entry>
<entry></entry>
</row>
<row> <row>
<entry>F171</entry> <entry>F171</entry>
<entry>Multiple schemas per user</entry> <entry>Multiple schemas per user</entry>
...@@ -1005,31 +867,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1005,31 +867,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>INSERT statement: DEFAULT VALUES clause</entry> <entry>INSERT statement: DEFAULT VALUES clause</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F231</entry>
<entry>Privilege Tables</entry>
<entry></entry>
</row>
<row>
<entry>F231-01</entry>
<entry>TABLE_PRIVILEGES view</entry>
<entry></entry>
</row>
<row>
<entry>F231-02</entry>
<entry>COLUMN_PRIVILEGES view</entry>
<entry></entry>
</row>
<row>
<entry>F231-03</entry>
<entry>USAGE_PRIVILEGES view</entry>
<entry></entry>
</row>
<row>
<entry>F251</entry>
<entry>Domain support</entry>
<entry></entry>
</row>
<row> <row>
<entry>F271</entry> <entry>F271</entry>
<entry>Compound character literals</entry> <entry>Compound character literals</entry>
...@@ -1045,21 +882,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1045,21 +882,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>UNIQUE predicate</entry> <entry>UNIQUE predicate</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F301</entry>
<entry>CORRESPONDING in query expressions</entry>
<entry></entry>
</row>
<row> <row>
<entry>F302</entry> <entry>F302</entry>
<entry>INTERSECT table operator</entry> <entry>INTERSECT table operator</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F302-01</entry>
<entry>INTERSECT DISTINCT table operator</entry>
<entry></entry>
</row>
<row> <row>
<entry>F302-02</entry> <entry>F302-02</entry>
<entry>INTERSECT ALL table operator</entry> <entry>INTERSECT ALL table operator</entry>
...@@ -1085,11 +912,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1085,11 +912,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Subprogram support</entry> <entry>Subprogram support</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F381</entry>
<entry>Extended schema manipulation</entry>
<entry></entry>
</row>
<row> <row>
<entry>F381-01</entry> <entry>F381-01</entry>
<entry>ALTER TABLE statement: ALTER COLUMN clause</entry> <entry>ALTER TABLE statement: ALTER COLUMN clause</entry>
...@@ -1140,11 +962,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1140,11 +962,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Time zone specification</entry> <entry>Time zone specification</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F421</entry>
<entry>National character</entry>
<entry></entry>
</row>
<row> <row>
<entry>F431</entry> <entry>F431</entry>
<entry>Read-only scrollable cursors</entry> <entry>Read-only scrollable cursors</entry>
...@@ -1180,16 +997,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1180,16 +997,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>FETCH RELATIVE</entry> <entry>FETCH RELATIVE</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F441</entry>
<entry>Extended set function support</entry>
<entry></entry>
</row>
<row>
<entry>F451</entry>
<entry>Character set definition</entry>
<entry></entry>
</row>
<row> <row>
<entry>F461</entry> <entry>F461</entry>
<entry>Named character sets</entry> <entry>Named character sets</entry>
...@@ -1200,36 +1007,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1200,36 +1007,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Constraint management</entry> <entry>Constraint management</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F502</entry>
<entry>Enhanced documentation tables</entry>
<entry></entry>
</row>
<row>
<entry>F502-01</entry>
<entry>SQL_SIZING_PROFILES view</entry>
<entry></entry>
</row>
<row>
<entry>F502-02</entry>
<entry>SQL_IMPLEMENTATION_INFO view</entry>
<entry></entry>
</row>
<row>
<entry>F502-03</entry>
<entry>SQL_PACKAGES view</entry>
<entry></entry>
</row>
<row> <row>
<entry>F511</entry> <entry>F511</entry>
<entry>BIT data type</entry> <entry>BIT data type</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F521</entry>
<entry>Assertions</entry>
<entry></entry>
</row>
<row> <row>
<entry>F531</entry> <entry>F531</entry>
<entry>Temporary tables</entry> <entry>Temporary tables</entry>
...@@ -1276,63 +1058,476 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1276,63 +1058,476 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F671</entry> <entry>F701</entry>
<entry>Subqueries in CHECK</entry> <entry>Referential update actions</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F691</entry> <entry>F741</entry>
<entry>Collation and translation</entry> <entry>Referential MATCH types</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F701</entry> <entry>F761</entry>
<entry>Referential update actions</entry> <entry>Session management</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F711</entry> <entry>F771</entry>
<entry>ALTER domain</entry> <entry>Connection management</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F721</entry> <entry>F791</entry>
<entry>Deferrable constraints</entry> <entry>Insensitive cursors</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F731</entry> <entry>F831</entry>
<entry>INSERT column privileges</entry> <entry>Full cursor update</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F741</entry> <entry>F831-01</entry>
<entry>Referential MATCH types</entry> <entry>Updateable scrollable cursors</entry>
<entry></entry>
</row>
<row>
<entry>F831-02</entry>
<entry>Updateable ordered cursors</entry>
<entry></entry>
</row>
<row>
<entry>S071</entry>
<entry>SQL paths in function and type name resolution</entry>
<entry></entry>
</row>
<row>
<entry>S091</entry>
<entry>Basic array support</entry>
<entry></entry>
</row>
<row>
<entry>S091-01</entry>
<entry>Arrays of built-in data types</entry>
<entry></entry>
</row>
<row>
<entry>S092</entry>
<entry>Arrays of user-defined types</entry>
<entry></entry>
</row>
<row>
<entry>S201</entry>
<entry>SQL routines on arrays</entry>
<entry></entry>
</row>
<row>
<entry>S201-01</entry>
<entry>Array parameters</entry>
<entry></entry>
</row>
<row>
<entry>S201-02</entry>
<entry>Array as result type of functions</entry>
<entry></entry>
</row>
<row>
<entry>T031</entry>
<entry>BOOLEAN data type</entry>
<entry></entry>
</row>
<row>
<entry>T141</entry>
<entry>SIMILAR predicate</entry>
<entry></entry>
</row>
<row>
<entry>T151</entry>
<entry>DISTINCT predicate</entry>
<entry></entry>
</row>
<row>
<entry>T171</entry>
<entry>LIKE clause in table definition</entry>
<entry></entry>
</row>
<row>
<entry>T191</entry>
<entry>Referential action RESTRICT</entry>
<entry></entry>
</row>
<row>
<entry>T201</entry>
<entry>Comparable data types for referential constraints</entry>
<entry></entry>
</row>
<row>
<entry>T211</entry>
<entry>Basic trigger capability</entry>
<entry></entry>
</row>
<row>
<entry>T211-01</entry>
<entry>Triggers activated on UPDATE, INSERT, or DELETE of one
base table</entry>
<entry></entry>
</row>
<row>
<entry>T211-02</entry>
<entry>BEFORE triggers</entry>
<entry></entry>
</row>
<row>
<entry>T211-03</entry>
<entry>AFTER triggers</entry>
<entry></entry>
</row>
<row>
<entry>T211-04</entry>
<entry>FOR EACH ROW triggers</entry>
<entry></entry>
</row>
<row>
<entry>T211-08</entry>
<entry>Multiple triggers for the same the event are executed in
the order in which they were created</entry>
<entry></entry>
</row>
<row>
<entry>T212</entry>
<entry>Enhanced trigger capability</entry>
<entry></entry>
</row>
<row>
<entry>T231</entry>
<entry>SENSITIVE cursors</entry>
<entry></entry>
</row>
<row>
<entry>T241</entry>
<entry>START TRANSACTION statement</entry>
<entry></entry>
</row>
<row>
<entry>T251</entry>
<entry>SET TRANSACTION statement: LOCAL option</entry>
<entry></entry>
</row>
<row>
<entry>T312</entry>
<entry>OVERLAY function</entry>
<entry></entry>
</row>
<row>
<entry>T322</entry>
<entry>Overloading of SQL-invoked functions and procedures</entry>
<entry></entry>
</row>
<row>
<entry>T323</entry>
<entry>Explicit security for external routines</entry>
<entry></entry>
</row>
<row>
<entry>T351</entry>
<entry>Bracketed SQL comments (/*...*/ comments)</entry>
<entry></entry>
</row>
<row>
<entry>T401</entry>
<entry>INSERT into a cursor</entry>
<entry></entry>
</row>
<row>
<entry>T441</entry>
<entry>ABS and MOD functions</entry>
<entry></entry>
</row>
<row>
<entry>T461</entry>
<entry>Symmetric BETWEEN predicate</entry>
<entry></entry>
</row>
<row>
<entry>T501</entry>
<entry>Enhanced EXISTS predicate</entry>
<entry></entry>
</row>
<row>
<entry>T551</entry>
<entry>Optional key words for default syntax</entry>
<entry></entry>
</row>
<row>
<entry>T571</entry>
<entry>Array-returning external SQL-invoked functions</entry>
<entry></entry>
</row>
<row>
<entry>T581</entry>
<entry>Regular expression substring function</entry>
<entry></entry>
</row>
<row>
<entry>T591</entry>
<entry>UNIQUE constraints of possibly null columns</entry>
<entry></entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</sect1>
<sect1 id="unsupported-features-sql99">
<title>Unsupported Features</title>
<para>
The following features defined in <acronym>SQL99</acronym> are not
implemented in the current release of
<productname>PostgreSQL</productname>. In a few cases, equivalent
functionality is available.
<informaltable>
<tgroup cols="3">
<thead>
<row>
<entry>Identifier</entry>
<entry>Description</entry>
<entry>Comment</entry>
</row>
</thead>
<tbody>
<row>
<entry>E081-05</entry>
<entry>UPDATE privilege at the column level</entry>
<entry></entry>
</row>
<row>
<entry>E081-07</entry>
<entry>REFERENCES privilege at the column level</entry>
<entry></entry>
</row>
<row>
<entry>E121-17</entry>
<entry>WITH HOLD cursors</entry>
<entry>Cursor stays open across transactions</entry>
</row>
<row>
<entry>E152-02</entry>
<entry>SET TRANSACTION statement: READ ONLY and READ WRITE
clauses</entry>
<entry></entry>
</row>
<row>
<entry>E171</entry>
<entry>SQLSTATE support</entry>
<entry></entry>
</row>
<row>
<entry>E182</entry>
<entry>Module language</entry>
<entry></entry>
</row>
<row>
<entry>F021</entry>
<entry>Basic information schema</entry>
<entry></entry>
</row>
<row>
<entry>F021-01</entry>
<entry>COLUMNS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-02</entry>
<entry>TABLES view</entry>
<entry></entry>
</row>
<row>
<entry>F021-03</entry>
<entry>VIEWS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-04</entry>
<entry>TABLE_CONSTRAINTS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-05</entry>
<entry>REFERENTIAL_CONSTRAINTS view</entry>
<entry></entry>
</row>
<row>
<entry>F021-06</entry>
<entry>CHECK_CONSTRAINTS view</entry>
<entry></entry>
</row>
<row>
<entry>F033</entry>
<entry>ALTER TABLE statement: DROP COLUMN clause</entry>
<entry>Syntax accepted</entry>
</row>
<row>
<entry>F111-01</entry>
<entry>READ UNCOMMITTED isolation level</entry>
<entry></entry>
</row>
<row>
<entry>F111-03</entry>
<entry>REPEATABLE READ isolation level</entry>
<entry></entry>
</row>
<row>
<entry>F121</entry>
<entry>Basic diagnostics management</entry>
<entry></entry>
</row>
<row>
<entry>F121-01</entry>
<entry>GET DIAGNOSTICS statement</entry>
<entry></entry>
</row>
<row>
<entry>F121-02</entry>
<entry>SET TRANSACTION statement: DIAGNOSTICS SIZE clause</entry>
<entry></entry>
</row>
<row>
<entry>F231</entry>
<entry>Privilege Tables</entry>
<entry></entry>
</row>
<row>
<entry>F231-01</entry>
<entry>TABLE_PRIVILEGES view</entry>
<entry></entry>
</row>
<row>
<entry>F231-02</entry>
<entry>COLUMN_PRIVILEGES view</entry>
<entry></entry>
</row>
<row>
<entry>F231-03</entry>
<entry>USAGE_PRIVILEGES view</entry>
<entry></entry>
</row>
<row>
<entry>F251</entry>
<entry>Domain support</entry>
<entry></entry>
</row>
<row>
<entry>F301</entry>
<entry>CORRESPONDING in query expressions</entry>
<entry></entry>
</row>
<row>
<entry>F302-01</entry>
<entry>INTERSECT DISTINCT table operator</entry>
<entry>Syntax accepted</entry>
</row>
<row>
<entry>F381</entry>
<entry>Extended schema manipulation</entry>
<entry></entry>
</row>
<row>
<entry>F421</entry>
<entry>National character</entry>
<entry>Syntax accepted</entry>
</row>
<row>
<entry>F441</entry>
<entry>Extended set function support</entry>
<entry></entry>
</row>
<row>
<entry>F451</entry>
<entry>Character set definition</entry>
<entry>Alternate implementation</entry>
</row>
<row>
<entry>F501</entry>
<entry>Features and conformance views</entry>
<entry></entry>
</row>
<row>
<entry>F501-01</entry>
<entry>SQL_FEATURES view</entry>
<entry></entry>
</row>
<row>
<entry>F501-02</entry>
<entry>SQL_SIZING view</entry>
<entry></entry>
</row>
<row>
<entry>F501-03</entry>
<entry>SQL_LANGUAGES view</entry>
<entry></entry>
</row>
<row>
<entry>F502</entry>
<entry>Enhanced documentation tables</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F751</entry> <entry>F502-01</entry>
<entry>View CHECK enhancements</entry> <entry>SQL_SIZING_PROFILES view</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F761</entry> <entry>F502-02</entry>
<entry>Session management</entry> <entry>SQL_IMPLEMENTATION_INFO view</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F771</entry> <entry>F502-03</entry>
<entry>Connection management</entry> <entry>SQL_PACKAGES view</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F781</entry> <entry>F521</entry>
<entry>Self-referencing operations</entry> <entry>Assertions</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F791</entry> <entry>F671</entry>
<entry>Insensitive cursors</entry> <entry>Subqueries in CHECK</entry>
<entry></entry>
</row>
<row>
<entry>F691</entry>
<entry>Collation and translation</entry>
<entry>Alternate implementation</entry>
</row>
<row>
<entry>F711</entry>
<entry>ALTER domain</entry>
<entry></entry>
</row>
<row>
<entry>F721</entry>
<entry>Deferrable constraints</entry>
<entry></entry>
</row>
<row>
<entry>F731</entry>
<entry>INSERT column privileges</entry>
<entry></entry>
</row>
<row>
<entry>F751</entry>
<entry>View CHECK enhancements</entry>
<entry></entry>
</row>
<row>
<entry>F781</entry>
<entry>Self-referencing operations</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
...@@ -1345,6 +1540,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1345,6 +1540,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Extended flagging</entry> <entry>Extended flagging</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>F812</entry>
<entry>Basic flagging</entry>
<entry></entry>
</row>
<row> <row>
<entry>F813</entry> <entry>F813</entry>
<entry>Extended flagging for "Core SQL Flagging" and "Catalog <entry>Extended flagging for "Core SQL Flagging" and "Catalog
...@@ -1357,18 +1557,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1357,18 +1557,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>F831</entry> <entry>S011-01</entry>
<entry>Full cursor update</entry> <entry>USER_DEFINED_TYPES view</entry>
<entry></entry>
</row>
<row>
<entry>F831-01</entry>
<entry>Updateable scrollable cursors</entry>
<entry></entry>
</row>
<row>
<entry>F831-02</entry>
<entry>Updateable ordered cursors</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
...@@ -1379,7 +1569,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1379,7 +1569,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<row> <row>
<entry>S024</entry> <entry>S024</entry>
<entry>Enhanced structured types</entry> <entry>Enhanced structured types</entry>
<entry></entry> <entry>Alternate implementation</entry>
</row> </row>
<row> <row>
<entry>S041</entry> <entry>S041</entry>
...@@ -1396,26 +1586,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1396,26 +1586,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Create table of type</entry> <entry>Create table of type</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>S071</entry>
<entry>SQL paths in function and type name resolution</entry>
<entry></entry>
</row>
<row> <row>
<entry>S081</entry> <entry>S081</entry>
<entry>Subtables</entry> <entry>Subtables</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>S091</entry>
<entry>Basic array support</entry>
<entry></entry>
</row>
<row>
<entry>S091-01</entry>
<entry>Arrays of built-in data types</entry>
<entry></entry>
</row>
<row> <row>
<entry>S091-02</entry> <entry>S091-02</entry>
<entry>Arrays of distinct types</entry> <entry>Arrays of distinct types</entry>
...@@ -1426,11 +1601,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1426,11 +1601,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Array expressions</entry> <entry>Array expressions</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>S092</entry>
<entry>Arrays of user-defined types</entry>
<entry></entry>
</row>
<row> <row>
<entry>S094</entry> <entry>S094</entry>
<entry>Arrays of reference types</entry> <entry>Arrays of reference types</entry>
...@@ -1444,32 +1614,17 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1444,32 +1614,17 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<row> <row>
<entry>S151</entry> <entry>S151</entry>
<entry>Type predicate</entry> <entry>Type predicate</entry>
<entry></entry> <entry>IS OF (type list)</entry>
</row> </row>
<row> <row>
<entry>S161</entry> <entry>S161</entry>
<entry>Subtype treatment</entry> <entry>Subtype treatment</entry>
<entry></entry> <entry>TREAT(expr AS type)</entry>
</row>
<row>
<entry>S201</entry>
<entry>SQL routines on arrays</entry>
<entry></entry>
</row>
<row>
<entry>S201-01</entry>
<entry>Array parameters</entry>
<entry></entry>
</row>
<row>
<entry>S201-02</entry>
<entry>Array as result type of functions</entry>
<entry></entry>
</row> </row>
<row> <row>
<entry>S211</entry> <entry>S211</entry>
<entry>User-defined cast functions</entry> <entry>User-defined cast functions</entry>
<entry></entry> <entry>CREATE CAST(type AS type) WITH</entry>
</row> </row>
<row> <row>
<entry>S231</entry> <entry>S231</entry>
...@@ -1489,7 +1644,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1489,7 +1644,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<row> <row>
<entry>S251</entry> <entry>S251</entry>
<entry>User-defined orderings</entry> <entry>User-defined orderings</entry>
<entry></entry> <entry>CREATE ORDERING FOR</entry>
</row> </row>
<row> <row>
<entry>S261</entry> <entry>S261</entry>
...@@ -1501,11 +1656,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1501,11 +1656,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Timestamp in Information Schema</entry> <entry>Timestamp in Information Schema</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T031</entry>
<entry>BOOLEAN data type</entry>
<entry></entry>
</row>
<row> <row>
<entry>T041</entry> <entry>T041</entry>
<entry>Basic LOB data type support</entry> <entry>Basic LOB data type support</entry>
...@@ -1562,57 +1712,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1562,57 +1712,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Recursive query</entry> <entry>Recursive query</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T141</entry>
<entry>SIMILAR predicate</entry>
<entry></entry>
</row>
<row>
<entry>T151</entry>
<entry>DISTINCT predicate</entry>
<entry></entry>
</row>
<row>
<entry>T171</entry>
<entry>LIKE clause in table definition</entry>
<entry></entry>
</row>
<row>
<entry>T191</entry>
<entry>Referential action RESTRICT</entry>
<entry></entry>
</row>
<row>
<entry>T201</entry>
<entry>Comparable data types for referential constraints</entry>
<entry></entry>
</row>
<row>
<entry>T211</entry>
<entry>Basic trigger capability</entry>
<entry></entry>
</row>
<row>
<entry>T211-01</entry>
<entry>Triggers activated on UPDATE, INSERT, or DELETE of one
base table</entry>
<entry></entry>
</row>
<row>
<entry>T211-02</entry>
<entry>BEFORE triggers</entry>
<entry></entry>
</row>
<row>
<entry>T211-03</entry>
<entry>AFTER triggers</entry>
<entry></entry>
</row>
<row>
<entry>T211-04</entry>
<entry>FOR EACH ROW triggers</entry>
<entry></entry>
</row>
<row> <row>
<entry>T211-05</entry> <entry>T211-05</entry>
<entry>Ability to specify a search condition that must be true <entry>Ability to specify a search condition that must be true
...@@ -1630,32 +1729,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1630,32 +1729,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>TRIGGER privilege</entry> <entry>TRIGGER privilege</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T211-08</entry>
<entry>Multiple triggers for the same the event are executed in
the order in which they were created</entry>
<entry></entry>
</row>
<row>
<entry>T212</entry>
<entry>Enhanced trigger capability</entry>
<entry></entry>
</row>
<row>
<entry>T231</entry>
<entry>SENSITIVE cursors</entry>
<entry></entry>
</row>
<row>
<entry>T241</entry>
<entry>START TRANSACTION statement</entry>
<entry></entry>
</row>
<row>
<entry>T251</entry>
<entry>SET TRANSACTION statement: LOCAL option</entry>
<entry></entry>
</row>
<row> <row>
<entry>T261</entry> <entry>T261</entry>
<entry>Chained transactions</entry> <entry>Chained transactions</entry>
...@@ -1677,18 +1750,23 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1677,18 +1750,23 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>T312</entry> <entry>T321-02</entry>
<entry>OVERLAY function</entry> <entry>User-defined stored procedures with no overloading</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>T322</entry> <entry>T321-04</entry>
<entry>Overloading of SQL-invoked functions and procedures</entry> <entry>CALL statement</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>T323</entry> <entry>T321-06</entry>
<entry>Explicit security for external routines</entry> <entry>ROUTINES view</entry>
<entry></entry>
</row>
<row>
<entry>T321-07</entry>
<entry>PARAMETERS view</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
...@@ -1701,16 +1779,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1701,16 +1779,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>Extended roles</entry> <entry>Extended roles</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T351</entry>
<entry>Bracketed SQL comments (/*...*/ comments)</entry>
<entry></entry>
</row>
<row>
<entry>T401</entry>
<entry>INSERT into a cursor</entry>
<entry></entry>
</row>
<row> <row>
<entry>T411</entry> <entry>T411</entry>
<entry>UPDATE statement: SET ROW option</entry> <entry>UPDATE statement: SET ROW option</entry>
...@@ -1721,16 +1789,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1721,16 +1789,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>CUBE and ROLLUP operations</entry> <entry>CUBE and ROLLUP operations</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T441</entry>
<entry>ABS and MOD functions</entry>
<entry></entry>
</row>
<row>
<entry>T461</entry>
<entry>Symmetric BETWEEN predicate</entry>
<entry></entry>
</row>
<row> <row>
<entry>T471</entry> <entry>T471</entry>
<entry>Result sets return value</entry> <entry>Result sets return value</entry>
...@@ -1741,11 +1799,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1741,11 +1799,6 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<entry>LATERAL derived table</entry> <entry>LATERAL derived table</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T501</entry>
<entry>Enhanced EXISTS predicate</entry>
<entry></entry>
</row>
<row> <row>
<entry>T511</entry> <entry>T511</entry>
<entry>Transaction counts</entry> <entry>Transaction counts</entry>
...@@ -1754,33 +1807,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho ...@@ -1754,33 +1807,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/features.sgml,v 2.1 2002/06/15 02:59:55 tho
<row> <row>
<entry>T541</entry> <entry>T541</entry>
<entry>Updatable table references</entry> <entry>Updatable table references</entry>
<entry></entry> <entry>?</entry>
</row>
<row>
<entry>T551</entry>
<entry>Optional key words for default syntax</entry>
<entry></entry>
</row> </row>
<row> <row>
<entry>T561</entry> <entry>T561</entry>
<entry>Holdable locators</entry> <entry>Holdable locators</entry>
<entry></entry> <entry></entry>
</row> </row>
<row>
<entry>T571</entry>
<entry>Array-returning external SQL-invoked functions</entry>
<entry></entry>
</row>
<row>
<entry>T581</entry>
<entry>Regular expression substring function</entry>
<entry></entry>
</row>
<row>
<entry>T591</entry>
<entry>UNIQUE constraints of possibly null columns</entry>
<entry></entry>
</row>
<row> <row>
<entry>T601</entry> <entry>T601</entry>
<entry>Local cursor references</entry> <entry>Local cursor references</entry>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment