Search Results typecode_opaque
Overview
SYS.DBMS_TYPES is a core Oracle Database supplied package that serves as the foundational type-definition layer for the ANYTYPE, ANYDATA, and ANYDATASET family of interfaces. Its primary role is to publish a normalized set of PLS_INTEGER constants that map Oracle's internal type codes (as stored in the data dictionary and used by the Oracle type system) to symbolic names that PL/SQL developers can reference safely. Values such as TYPECODE_NUMBER (2), TYPECODE_VARCHAR2 (9), TYPECODE_DATE (12), TYPECODE_TIMESTAMP (187), and TYPECODE_BLOB (113) allow code that inspects, converts, or constructs dynamically typed data to avoid hard-coded magic numbers. In the Oracle E-Business Suite context (12.1.1 and 12.2.2), this package is not an applications-owned object; it belongs to SYS and is exercised indirectly whenever EBS code, Oracle Streams/AQ, or XML/typed-data infrastructure performs ANYDATA manipulation. It is classified under the ETRM taxonomy as API classification OTHER, reflecting that it exposes constants and exception declarations rather than business-oriented callable units.
Key Procedures and Functions
The documented metadata for this object lists zero procedures or functions. SYS.DBMS_TYPES is a specification-only package that publishes constants and exceptions; it contains no executable subprograms in the documented excerpt.
The specification defines the following categories of members:
- Type-code constants: Scalar and LOB codes including
TYPECODE_DATE,TYPECODE_NUMBER,TYPECODE_RAW,TYPECODE_CHAR,TYPECODE_VARCHAR2,TYPECODE_VARCHAR,TYPECODE_MLSLABEL,TYPECODE_BLOB,TYPECODE_BFILE,TYPECODE_CLOB, andTYPECODE_CFILE. - Datetime and interval codes:
TYPECODE_TIMESTAMP,TYPECODE_TIMESTAMP_TZ,TYPECODE_TIMESTAMP_LTZ,TYPECODE_INTERVAL_YM, andTYPECODE_INTERVAL_DS. - Complex and collection codes:
TYPECODE_REF,TYPECODE_OBJECT,TYPECODE_VARRAY,TYPECODE_TABLE,TYPECODE_NAMEDCOLLECTION, andTYPECODE_OPAQUE. - NCHAR-family short forms:
TYPECODE_NCHAR,TYPECODE_NVARCHAR2, andTYPECODE_NCLOB, noted for use in the AnyData API with a charset form ofSQLCS_NCHAR. - Numerical and ROWID codes:
TYPECODE_BFLOAT,TYPECODE_BDOUBLE, andTYPECODE_UROWID. - Status constants:
SUCCESS(0) andNO_DATA(100). - Exceptions:
invalid_parametersinitialized to error-22369,incorrect_usageto-22370, andtype_mismatchto-22626.
The user search term "invalid_parameters" corresponds directly to the declared exception invalid_parameters EXCEPTION; PRAGMA EXCEPTION_INIT(invalid_parameters, -22369). This exception is raised by the AnyData/AnyType APIs when a supplied argument is incompatible with the required target type or when an invalid type code is passed during conversion.
Tables Accessed
The ETRM metadata documents no tables referenced through APPS synonyms, and none are accessed through APPS-owned objects. SYS.DBMS_TYPES is a pure declaration package resident in the SYS schema; it reads and writes no application or dictionary tables. Type information consumed by its related APIs is held in the SYS data dictionary and Oracle type-system metadata rather than in EBS tables.
Usage Notes
- Invoked implicitly by
DBMS_TYPES-dependent APIs such asANYDATA,ANYTYPE, andANYDATASET, and by Oracle Advanced Queuing and XML infrastructure commonly present in EBS environments. - Custom PL/SQL that must branch on runtime type information should raise or handle
DBMS_TYPES.invalid_parameters(-22369) when a mismatched or null type code is encountered. - Because the package belongs to
SYS, it is not patchable through EBS patching, and application code should reference the fully qualified nameSYS.DBMS_TYPESconsistent with ETRM documentation. - References to these constants are appropriate in generic conversion utilities, dynamic SQL type dispatch, and any routine that stores heterogeneous typed values inside EBS custom tables.
-
PACKAGE: SYS.DBMS_TYPES
12.1.1
-
PACKAGE: SYS.DBMS_TYPES
12.2.2