Supported Versions: Current (17) / 16 / 15 / 14 / 13
Development Versions: devel
Unsupported versions: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0
This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the current version, or one of the other supported versions listed above instead.

D.2. Unsupported Features

The following features defined in SQL:2008 are not implemented in this release of PostgreSQL. In a few cases, equivalent functionality is available.

Identifier Package Description Comment
B011   Embedded Ada  
B013   Embedded COBOL  
B014   Embedded Fortran  
B015   Embedded MUMPS  
B016   Embedded Pascal  
B017   Embedded PL/I  
B031   Basic dynamic SQL  
B032   Extended dynamic SQL  
B032-01   <describe input statement>  
B033   Untyped SQL-invoked function arguments  
B034   Dynamic specification of cursor attributes  
B035   Non-extended descriptor names  
B041   Extensions to embedded SQL exception declarations  
B051   Enhanced execution rights  
B111   Module language Ada  
B112   Module language C  
B113   Module language COBOL  
B114   Module language Fortran  
B115   Module language MUMPS  
B116   Module language Pascal  
B117   Module language PL/I  
B121   Routine language Ada  
B122   Routine language C  
B123   Routine language COBOL  
B124   Routine language Fortran  
B125   Routine language MUMPS  
B126   Routine language Pascal  
B127   Routine language PL/I  
B128   Routine language SQL  
E081 Core Basic Privileges  
E081-09 Core USAGE privilege  
E153 Core Updatable queries with subqueries  
E182 Core Module language  
F121   Basic diagnostics management  
F121-01   GET DIAGNOSTICS statement  
F121-02   SET TRANSACTION statement: DIAGNOSTICS SIZE clause  
F122   Enhanced diagnostics management  
F123   All diagnostics  
F181 Core Multiple module support  
F202   TRUNCATE TABLE: identity column restart option  
F262   Extended CASE expression  
F263   Comma-separated predicates in simple CASE expression  
F291   UNIQUE predicate  
F301   CORRESPONDING in query expressions  
F311 Core Schema definition statement  
F311-04 Core CREATE VIEW: WITH CHECK OPTION  
F312   MERGE statement  
F313   Enhanced MERGE statement  
F341   Usage tables  
F394   Optional normal form specification  
F403   Partitioned joined tables  
F451   Character set definition  
F461   Named character sets  
F521 Enhanced integrity management Assertions  
F641   Row and table constructors  
F671 Enhanced integrity management Subqueries in CHECK intentionally omitted
F690   Collation support  
F692   Enhanced collation support  
F693   SQL-session and client module collations  
F695   Translation support  
F696   Additional translation documentation  
F721   Deferrable constraints foreign keys only
F741   Referential MATCH types no partial match yet
F751   View CHECK enhancements  
F812 Core Basic flagging  
F813   Extended flagging  
F821   Local table references  
F831   Full cursor update  
F831-01   Updatable scrollable cursors  
F831-02   Updatable ordered cursors  
F841   LIKE_REGEX predicate  
F842   OCCURENCES_REGEX function  
F843   POSITION_REGEX function  
F844   SUBSTRING_REGEX function  
F845   TRANSLATE_REGEX function  
F846   Octet support in regular expression operators  
F847   Nonconstant regular expressions  
S011 Core Distinct data types  
S011-01 Core USER_DEFINED_TYPES view  
S023 Basic object support Basic structured types  
S024 Enhanced object support Enhanced structured types  
S025   Final structured types  
S026   Self-referencing structured types  
S027   Create method by specific method name  
S028   Permutable UDT options list  
S041 Basic object support Basic reference types  
S043 Enhanced object support Enhanced reference types  
S051 Basic object support Create table of type  
S081 Enhanced object support Subtables  
S091   Basic array support partially supported
S091-01   Arrays of built-in data types  
S091-02   Arrays of distinct types  
S091-03   Array expressions  
S094   Arrays of reference types  
S097   Array element assignment  
S098   ARRAY_AGG ORDER BY clause not supported
S151 Basic object support Type predicate  
S161 Enhanced object support Subtype treatment  
S162   Subtype treatment for references  
S201   SQL-invoked routines on arrays  
S201-01   Array parameters  
S201-02   Array as result type of functions  
S202   SQL-invoked routines on multisets  
S231 Enhanced object support Structured type locators  
S232   Array locators  
S233   Multiset locators  
S241   Transform functions  
S242   Alter transform statement  
S251   User-defined orderings  
S261   Specific type method  
S271   Basic multiset support  
S272   Multisets of user-defined types  
S274   Multisets of reference types  
S275   Advanced multiset support  
S281   Nested collection types  
S291   Unique constraint on entire row  
S301   Enhanced UNNEST  
S401   Distinct types based on array types  
S402   Distinct types based on distinct types  
S403   MAX_CARDINALITY  
S404   TRIM_ARRAY  
T011   Timestamp in Information Schema  
T021   BINARY and VARBINARY data types  
T022   Advanced support for BINARY and VARBINARY data types  
T023   Compound binary literal  
T024   Spaces in binary literals  
T041 Basic object support Basic LOB data type support  
T041-01 Basic object support BLOB data type  
T041-02 Basic object support CLOB data type  
T041-03 Basic object support POSITION, LENGTH, LOWER, TRIM, UPPER, and SUBSTRING functions for LOB data types  
T041-04 Basic object support Concatenation of LOB data types  
T041-05 Basic object support LOB locator: non-holdable  
T042   Extended LOB data type support  
T043   Multiplier T  
T044   Multiplier P  
T051   Row types  
T052   MAX and MIN for row types  
T053   Explicit aliases for all-fields reference  
T061   UCS support  
T101   Enhanced nullability determiniation  
T111   Updatable joins, unions, and columns  
T174   Identity columns  
T175   Generated columns  
T176   Sequence generator support  
T177   Sequence generator support: simple restart option  
T178   Identity columns: simple restart option  
T211 Active database, Enhanced integrity management Basic trigger capability  
T211-05 Active database, Enhanced integrity management Ability to specify a search condition that must be true before the trigger is invoked  
T211-06 Active database, Enhanced integrity management Support for run-time rules for the interaction of triggers and constraints  
T211-08 Active database, Enhanced integrity management Multiple triggers for the same event are executed in the order in which they were created in the catalog intentionally omitted
T213   INSTEAD OF triggers  
T251   SET TRANSACTION statement: LOCAL option  
T261   Chained transactions  
T272   Enhanced savepoint management  
T285   Enhanced derived column names  
T301   Functional dependencies  
T321 Core Basic SQL-invoked routines  
T321-02 Core User-defined stored procedures with no overloading  
T321-04 Core CALL statement  
T321-05 Core RETURN statement  
T324   Explicit security for SQL routines  
T325   Qualified SQL parameter references  
T326   Table functions  
T331   Basic roles  
T332   Extended roles  
T431 OLAP Extended grouping capabilities  
T432   Nested and concatenated GROUPING SETS  
T433   Multiargument GROUPING function  
T434   GROUP BY DISTINCT  
T471   Result sets return value  
T491   LATERAL derived table  
T511   Transaction counts  
T541   Updatable table references  
T561   Holdable locators  
T571   Array-returning external SQL-invoked functions  
T572   Multiset-returning external SQL-invoked functions  
T601   Local cursor references  
T611 OLAP Elementary OLAP operations most forms supported
T612   Advanced OLAP operations some forms supported
T613   Sampling  
T616   Null treatment option for LEAD and LAG functions  
T618   NTH_VALUE function function exists, but some options missing
T631 Core IN predicate with one list element  
T641   Multiple column assignment only some syntax variants supported
T651   SQL-schema statements in SQL routines  
T652   SQL-dynamic statements in SQL routines  
T653   SQL-schema statements in external routines  
T654   SQL-dynamic statements in external routines  
T655   Cyclically dependent routines  
M001   Datalinks  
M002   Datalinks via SQL/CLI  
M003   Datalinks via Embedded SQL  
M004   Foreign data support  
M005   Foreign schema support  
M006   GetSQLString routine  
M007   TransmitRequest  
M009   GetOpts and GetStatistics routines  
M010   Foreign data wrapper support  
M011   Datalinks via Ada  
M012   Datalinks via C  
M013   Datalinks via COBOL  
M014   Datalinks via Fortran  
M015   Datalinks via M  
M016   Datalinks via Pascal  
M017   Datalinks via PL/I  
M018   Foreign data wrapper interface routines in Ada  
M019   Foreign data wrapper interface routines in C  
M020   Foreign data wrapper interface routines in COBOL  
M021   Foreign data wrapper interface routines in Fortran  
M022   Foreign data wrapper interface routines in MUMPS  
M023   Foreign data wrapper interface routines in Pascal  
M024   Foreign data wrapper interface routines in PL/I  
M030   SQL-server foreign data support  
M031   Foreign data wrapper general routines  
X012   Multisets of XML type  
X013   Distinct types of XML type  
X014   Attributes of XML type  
X015   Fields of XML type  
X025   XMLCast  
X030   XMLDocument  
X035   XMLAgg: ORDER BY option  
X038   XMLText  
X040   Basic table mapping  
X065   XMLParse: BLOB input and CONTENT option  
X066   XMLParse: BLOB input and DOCUMENT option  
X068   XMLSerialize: BOM  
X069   XMLSerialize: INDENT  
X073   XMLSerialize: BLOB serialization and CONTENT option  
X074   XMLSerialize: BLOB serialization and DOCUMENT option  
X075   XMLSerialize: BLOB serialization  
X076   XMLSerialize: VERSION  
X077   XMLSerialize: explicit ENCODING option  
X078   XMLSerialize: explicit XML declaration  
X080   Namespaces in XML publishing  
X081   Query-level XML namespace declarations  
X082   XML namespace declarations in DML  
X083   XML namespace declarations in DDL  
X084   XML namespace declarations in compound statements  
X085   Predefined namespace prefixes  
X086   XML namespace declarations in XMLTable  
X091   XML content predicate  
X096   XMLExists  
X100   Host language support for XML: CONTENT option  
X101   Host language support for XML: DOCUMENT option  
X110   Host language support for XML: VARCHAR mapping  
X111   Host language support for XML: CLOB mapping  
X112   Host language support for XML: BLOB mapping  
X113   Host language support for XML: STRIP WHITESPACE option  
X114   Host language support for XML: PRESERVE WHITESPACE option  
X131   Query-level XMLBINARY clause  
X132   XMLBINARY clause in DML  
X133   XMLBINARY clause in DDL  
X134   XMLBINARY clause in compound statements  
X135   XMLBINARY clause in subqueries  
X141   IS VALID predicate: data-driven case  
X142   IS VALID predicate: ACCORDING TO clause  
X143   IS VALID predicate: ELEMENT clause  
X144   IS VALID predicate: schema location  
X145   IS VALID predicate outside check constraints  
X151   IS VALID predicate with DOCUMENT option  
X152   IS VALID predicate with CONTENT option  
X153   IS VALID predicate with SEQUENCE option  
X155   IS VALID predicate: NAMESPACE without ELEMENT clause  
X157   IS VALID predicate: NO NAMESPACE with ELEMENT clause  
X160   Basic Information Schema for registered XML Schemas  
X161   Advanced Information Schema for registered XML Schemas  
X170   XML null handling options  
X171   NIL ON NO CONTENT option  
X181   XML(DOCUMENT(UNTYPED)) type  
X182   XML(DOCUMENT(ANY)) type  
X190   XML(SEQUENCE) type  
X191   XML(DOCUMENT(XMLSCHEMA)) type  
X192   XML(CONTENT(XMLSCHEMA)) type  
X200   XMLQuery  
X201   XMLQuery: RETURNING CONTENT  
X202   XMLQuery: RETURNING SEQUENCE  
X203   XMLQuery: passing a context item  
X204   XMLQuery: initializing an XQuery variable  
X205   XMLQuery: EMPTY ON EMPTY option  
X206   XMLQuery: NULL ON EMPTY option  
X211   XML 1.1 support  
X221   XML passing mechanism BY VALUE  
X222   XML passing mechanism BY REF  
X231   XML(CONTENT(UNTYPED)) type  
X232   XML(CONTENT(ANY)) type  
X241   RETURNING CONTENT in XML publishing  
X242   RETURNING SEQUENCE in XML publishing  
X251   Persistent XML values of XML(DOCUMENT(UNTYPED)) type  
X252   Persistent XML values of XML(DOCUMENT(ANY)) type  
X253   Persistent XML values of XML(CONTENT(UNTYPED)) type  
X254   Persistent XML values of XML(CONTENT(ANY)) type  
X255   Persistent XML values of XML(SEQUENCE) type  
X256   Persistent XML values of XML(DOCUMENT(XMLSCHEMA)) type  
X257   Persistent XML values of XML(CONTENT(XMLSCHEMA)) type  
X260   XML type: ELEMENT clause  
X261   XML type: NAMESPACE without ELEMENT clause  
X263   XML type: NO NAMESPACE with ELEMENT clause  
X264   XML type: schema location  
X271   XMLValidate: data-driven case  
X272   XMLValidate: ACCORDING TO clause  
X273   XMLValidate: ELEMENT clause  
X274   XMLValidate: schema location  
X281   XMLValidate: with DOCUMENT option  
X282   XMLValidate with CONTENT option  
X283   XMLValidate with SEQUENCE option  
X284   XMLValidate NAMESPACE without ELEMENT clause  
X286   XMLValidate: NO NAMESPACE with ELEMENT clause  
X300   XMLTable  
X301   XMLTable: derived column list option  
X302   XMLTable: ordinality column option  
X303   XMLTable: column default option  
X304   XMLTable: passing a context item  
X305   XMLTable: initializing an XQuery variable  
X400   Name and identifier mapping