PostgreSQL

PostgreSQL Elephant Logo

D.2. Unsupported Features

The following features defined in SQL:2011 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

B211

Module language Ada: VARCHAR and NUMERIC support

B221

Routine language Ada: VARCHAR and NUMERIC support

E182

Core

Module language

F054

TIMESTAMP in DATE type precedence list

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

F263

Comma-separated predicates in simple CASE expression

F291

UNIQUE predicate

F301

CORRESPONDING in query expressions

F311

Core

Schema definition statement

F312

MERGE statement

consider INSERT …​ ON CONFLICT DO UPDATE

F313

Enhanced MERGE statement

F314

MERGE statement with DELETE branch

F341

Usage tables

no ROUTINE_*_USAGE tables

F385

Drop column generation expression clause

F394

Optional normal form specification

F403

Partitioned joined tables

F451

Character set definition

F461

Named character sets

F492

Optional table constraint enforcement

F521

Enhanced integrity management

Assertions

F671

Enhanced integrity management

Subqueries in CHECK

intentionally omitted

F693

SQL-session and client module collations

F695

Translation support

F696

Additional translation documentation

F721

Deferrable constraints

foreign and unique keys only

F741

Referential MATCH types

no partial match yet

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

OCCURRENCES_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

F866

FETCH FIRST clause: PERCENT option

F867

FETCH FIRST clause: WITH TIES option

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

partially supported

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

S151

Basic object support

Type predicate

S161

Enhanced object support

Subtype treatment

S162

Subtype treatment for references

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

S401

Distinct types based on array types

S402

Distinct types based on distinct types

S403

ARRAY_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 determination

T111

Updatable joins, unions, and columns

T175

Generated columns

T176

Sequence generator support

T180

System-versioned tables

T181

Application-time period tables

T211

Active database, Enhanced integrity management

Basic trigger capability

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

T301

Functional dependencies

partially supported

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

T322

PSM

Declared data type attributes

T324

Explicit security for SQL routines

T326

Table functions

T332

Extended roles

mostly supported

T434

GROUP BY DISTINCT

T471

Result sets return value

T472

DESCRIBE CURSOR

T495

Combined data change and retrieval

different syntax

T502

Period predicates

T511

Transaction counts

T521

Named arguments in CALL statement

T522

Default values for IN parameters of SQL-invoked procedures

supported except DEFAULT key word in invocation

T561

Holdable locators

T571

Array-returning external SQL-invoked functions

T572

Multiset-returning external SQL-invoked functions

T601

Local cursor references

T612

Advanced OLAP operations

some forms supported

T616

Null treatment option for LEAD and LAG functions

T618

NTH_VALUE function

function exists, but some options missing

T619

Nested window functions

T620

WINDOW clause: GROUPS option

T641

Multiple column assignment

only some syntax variants supported

T652

SQL-dynamic statements in SQL routines

T653

SQL-schema statements in external routines

T654

SQL-dynamic statements in external routines

M001

Datalinks

M002

Datalinks via SQL/CLI

M003

Datalinks via Embedded SQL

M004

Foreign data support

partially supported

M005

Foreign schema support

M006

GetSQLString routine

M007

TransmitRequest

M009

GetOpts and GetStatistics routines

M010

Foreign data wrapper support

different API

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

different API

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

X015

Fields of XML type

X025

XMLCast

X030

XMLDocument

X038

XMLText

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

XPath 1.0 only

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

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

XPath 1.0 only

X305

XMLTable: initializing an XQuery variable


Prev Up Next

D.1. Supported Features

Home

D.3. XML Limits and Conformance to SQL/XML

Copyright © 1996-2023 The PostgreSQL Global Development Group