## D.2. Unsupported Features

The following features defined in SQL:2003 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 |
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 |
C011 | Core | Call-Level Interface |
E081 | Core | Basic Privileges |
E081-05 | Core | UPDATE privilege at the column level |
E081-07 | Core | REFERENCES privilege at the column level |
E081-09 | Core | USAGE privilege |
E121 | Core | Basic cursor support |
E121-06 | Core | Positioned UPDATE statement |
E121-07 | Core | Positioned DELETE statement |
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 |
F181 | Core | Multiple module support |
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 |
F341 |  | Usage tables |
F392 |  | Unicode escapes in identifiers |
F393 |  | Unicode escapes in literals |
F402 |  | Named column joins for LOBs, arrays, and multisets |
F442 |  | Mixed column references in set functions |
F451 |  | Character set definition |
F461 |  | Named character sets |
F521 | Enhanced integrity management | Assertions |
F641 |  | Row and table constructors |
F661 |  | Simple tables |
F671 | Enhanced integrity management | Subqueries in CHECK | intentionally omitted
F691 |  | Collation and translation |
F692 |  | Enhanced collation support |
F693 |  | SQL-session and client module collations |
F695 |  | Translation support |
F696 |  | Additional translation documentation |
F721 |  | Deferrable constraints | foreign keys only
F731 |  | INSERT column privileges |
F741 |  | Referential MATCH types | no partial match yet
F751 |  | View CHECK enhancements |
F811 |  | Extended flagging |
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 |
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 |
S091-01 |  | Arrays of built-in data types |
S091-02 |  | Arrays of distinct types |
S091-03 |  | Array expressions |
S092 |  | Arrays of user-defined types |
S094 |  | Arrays of reference types |
S095 |  | Array constructors by query |
S096 |  | Optional array bounds |
S097 |  | Array element assignment |
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 |
T011 |  | Timestamp in Information Schema |
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 |
T051 |  | Row types |
T052 |  | MAX and MIN for row types |
T053 |  | Explicit aliases for all-fields reference |
T061 |  | UCS support |
T111 |  | Updatable joins, unions, and columns |
T121 |  | WITH (excluding RECURSIVE) in query expression |
T122 |  | WITH (excluding RECURSIVE) in subquery |
T131 |  | Recursive query |
T132 |  | Recursive query in subquery |
T152 |  | DISTINCT predicate with negation |
T172 |  | AS subquery clause in table definition |
T173 |  | Extended LIKE clause in table definition |
T174 |  | Identity columns |
T175 |  | Generated columns |
T176 |  | Sequence generator support |
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
T251 |  | SET TRANSACTION statement: LOCAL option |
T261 |  | Chained transactions |
T272 |  | Enhanced savepoint management |
T281 |  | SELECT privilege with column granularity |
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 |
T401 |  | INSERT into a cursor |
T411 |  | UPDATE statement: SET ROW option |
T431 | OLAP | Extended grouping capabilities |
T432 |  | Nested and concatenated GROUPING SETS |
T433 |  | Multiargument GROUPING function |
T434 |  | GROUP BY DISINCT |
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 |
T612 |  | Advanced OLAP operations |
T613 |  | Sampling |
T621 |  | Enhanced numeric functions |
T631 | Core | IN predicate with one list element |
T641 |  | Multiple column assignment |
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 |