Restrictions for JavaScript Object Notation and JSON-Relational Duality Views

The following are general restrictions for JavaScript Object Notation (JSON) and restrictions for JSON-relational duality views in Oracle Database 23ai.

General Restrictions for JavaScript Object Notation (JSON)

  • JSON collection views are not supported in this release.

Restrictions for JSON-Relational Duality Views

  • The following column data types cannot be used with duality views:
    • TIMESTAMP WITH LOCAL TIME ZONE
    • BFILE
    • ROWID
    • UROWID
    • XMLTYPE
    • ANYTYPE
    • ANYDATA
    • ANYDATASET
    • HTTPURIType
    • XDBURIType
    • DBURIType
    • SDO_POINT_TYPE
    • SDO_ELEM_INFO_ARRAY
    • SDO_ORDINATE_ARRAY
    • SDO_GEOMETRY
    • SDO_TOPO_GEOMETRY
    • Object types (Abstract Data Types)
  • Duality views cannot be created on:
    • System-partitioned tables
    • Partitioned-extended tables
    • Sharded tables
    • Views (except editioning views). Views include materialized views and duality views.
    • External tables
    • Hybrid partitioned tables
    • Global or private temporary tables
    • Remote tables (for example, tables over database links)
  • Updates of duality views across database links are not supported.
  • You cannot create a functional index, JSON search index, or JSON multivalue index on the DATA column of a duality view.
  • The use of a JSON search index on the column of an underlying table is not supported.
  • Virtual private database (VPD) and Oracle Real Application Security (RAS) on duality views are not supported.
  • VPD on underlying tables are supported only if all statements (INSERT, UPDATE, DELETE, or SELECT) are included in the policy. However, when all statement types are not included in the VPD policy, there is no error returned but DML and query results may be unexpected or may fail.
  • Transparent Sensitive Data Protection is not supported with duality views and underlying tables.
  • Table columns of a duality view cannot be redacted if the redacted columns are part of the ETAG.
  • Because JSON-relational duality views rely on JSON type, a 19c or earlier SQL*Plus client cannot be used for queries, DML or other SQL operations that use the DATA column which is of data type JSON.
  • Duality views cannot be created on base tables with textual JSON columns (VC2/CLOB/BLOB with IS-JSON constraint) in the base table.
  • The same subquery cannot be used multiple times to define nested JSON structures (object or array) in the same parent object.
  • Fine-grained auditing policies are not supported with duality views.
  • DML error logging is not supported with duality views.