C.2. Unsupported Features

The following features defined in SQL99 are not implemented in the current release of PostgreSQL. In a few cases, equivalent functionality is available.

IdentifierPackageDescriptionComment
B011CoreEmbedded Ada 
B013CoreEmbedded COBOL 
B014CoreEmbedded Fortran 
B015CoreEmbedded MUMPS 
B016CoreEmbedded Pascal 
B017CoreEmbedded PL/I 
B031 Basic dynamic SQL 
B032 Extended dynamic SQL 
B032-1 <describe input> statement 
B041 Extensions to embedded SQL exception declarations 
B051 Enhanced execution rights 
E081CoreBasic Privileges 
E081-05CoreUPDATE privilege at the column level 
E081-07CoreREFERENCES privilege at the column level 
E081-08CoreWITH GRANT OPTION 
E121CoreBasic cursor support 
E121-04CoreOPEN statement(cursor)
E121-06CorePositioned UPDATE statement(cursor)
E121-07CorePositioned DELETE statement(cursor)
E121-17CoreWITH HOLD cursorsCursor to stay open across transactions
E152CoreBasic SET TRANSACTION statement 
E152-02CoreSET TRANSACTION statement: READ ONLY and READ WRITE clausesSyntax accepted; READ ONLY not supported
E153CoreUpdatable queries with subqueries 
E171CoreSQLSTATE support 
F181 Multiple module support 
E182CoreModule language 
F021CoreBasic information schema 
F021-01CoreCOLUMNS view 
F021-02CoreTABLES view 
F021-03CoreVIEWS view 
F021-04CoreTABLE_CONSTRAINTS view 
F021-05CoreREFERENTIAL_CONSTRAINTS view 
F021-06CoreCHECK_CONSTRAINTS view 
F031-19CoreREVOKE statement: RESTRICT clause 
F034 Extended REVOKE statement 
F034-01 REVOKE statement performed by other than the owner of a schema object 
F034-02 REVOKE statement: GRANT OPTION FOR clause 
F034-03 REVOKE statement to revoke a privilege that the grantee has WITH GRANT OPTION 
F111 Isolation levels other than SERIALIZABLE 
F111-01 READ UNCOMMITTED isolation level 
F111-03 REPEATABLE READ isolation level 
F121 Basic diagnostics management 
F121-01 GET DIAGNOSTICS statement 
F121-02 SET TRANSACTION statement: DIAGNOSTICS SIZE clause 
F231 Privilege Tables 
F231-01 TABLE_PRIVILEGES view 
F231-02 COLUMN_PRIVILEGES view 
F231-03 USAGE_PRIVILEGES view 
F291 UNIQUE predicate 
F301 CORRESPONDING in query expressions 
F311-04CoreCREATE VIEW: WITH CHECK OPTION 
F341 Usage tables 
F431 Read-only scrollable cursors 
F431-02 FETCH FIRST 
F431-03 FETCH LAST 
F431-05 FETCH ABSOLUTE 
F451 Character set definition 
F461 Named character sets 
F501CoreFeatures and conformance views 
F501-01CoreSQL_FEATURES view 
F501-02CoreSQL_SIZING view 
F501-03CoreSQL_LANGUAGES view 
F502 Enhanced documentation tables 
F502-01 SQL_SIZING_PROFILES view 
F502-02 SQL_IMPLEMENTATION_INFO view 
F502-03 SQL_PACKAGES view 
F521Enhanced integrity managementAssertions 
F641OLAP facilitiesRow and table constructors 
F661 Simple tables 
F671Enhanced integrity managementSubqueries in CHECKintentionally omitted
F691 Collation and translation 
F711 ALTER domain 
F721 Deferrable constraintsforeign keys only
F731 INSERT column privileges 
F741 Referential MATCH typesno partial match yet
F751 View CHECK enhancements 
F771 Connection management 
F781 Self-referencing operations 
F811 Extended flagging 
F812CoreBasic flagging 
F813 Extended flagging for "Core SQL Flagging" and "Catalog Lookup" only 
F821 Local table references 
F831 Full cursor update 
F831-01 Updatable scrollable cursors 
F831-02 Updatable ordered cursors 
S011CoreDistinct data types 
S011-01CoreUSER_DEFINED_TYPES view 
S023Basic object support, SQL/MM supportBasic structured types 
S024, SQL/MM supportEnhanced object supportEnhanced structured types 
S041Basic object supportBasic reference types 
S043Enhanced object supportEnhanced reference types 
S051Basic object supportCreate table of type 
S081Enhanced object supportSubtables 
S091SQL/MM supportBasic array supportPostgreSQL arrays are different
S091-01SQL/MM supportArrays of built-in data types 
S091-02SQL/MM supportArrays of distinct types 
S091-03SQL/MM supportArray expressions 
S092SQL/MM supportArrays of user-defined types 
S094 Arrays of reference types 
S151Basic object supportType predicateIS OF
S161Enhanced object supportSubtype treatmentTREAT(expr AS type)
S201 SQL routines on arrays 
S201-01 Array parameters 
S201-02 Array as result type of functions 
S231Enhanced object supportStructured type locators 
S232 Array locators 
S241Enhanced object supportTransform functions 
S251 User-defined orderingsCREATE ORDERING FOR
S261 Specific type method 
T011 Timestamp in Information Schema 
T041Basic object supportBasic LOB data type support 
T041-01Basic object supportBLOB data type 
T041-02Basic object supportCLOB data type 
T041-03Basic object supportPOSITION, LENGTH, LOWER, TRIM, UPPER, and SUBSTRING functions for LOB data types 
T041-04Basic object supportConcatenation of LOB data types 
T041-05Basic object supportLOB locator: non-holdable 
T042 Extended LOB data type support 
T051 Row types 
T111 Updatable joins, unions, and columns 
T121 WITH (excluding RECURSIVE) in query expression 
T131 Recursive query 
T171 LIKE clause in table definitionCREATE TABLE T1 (LIKE T2)
T211Enhanced integrity management, Active databaseBasic trigger capability 
T211-05Enhanced integrity managementAbility to specify a search condition that must be true before the trigger is invoked 
T211-06Enhanced integrity managementSupport for run-time rules for the interaction of triggers and constraints 
T211-08Enhanced integrity managementMultiple triggers for the same the event are executed in the order in which they were created 
T212Enhanced integrity managementEnhanced trigger capability 
T251 SET TRANSACTION statement: LOCAL option 
T261 Chained transactions 
T271 Savepoints 
T281 SELECT privilege with column granularity 
T301 Functional Dependencies 
T321CoreBasic SQL-invoked routines 
T321-02CoreUser-defined stored procedures with no overloading 
T321-04CoreCALL statement 
T321-05CoreRETURN statement 
T321-06CoreROUTINES view 
T321-07CorePARAMETERS view 
T331 Basic roles 
T332 Extended roles 
T401 INSERT into a cursor 
T411 UPDATE statement: SET ROW option 
T431OLAP facilitiesCUBE and ROLLUP operations 
T461 Symmetric BETWEEN predicate 
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 
T601 Local cursor references