22.3 Data Types

The APEX_EXEC package uses the following data types.

Generic

subtype t_column_name is varchar2(32767);

type t_value is record (
    varchar2_value      varchar2(32767),
    number_value        number,
    binary_number_value binary_double,
    date_value          date,
    timestamp_value     timestamp,
    timestamp_tz_value  timestamp with time zone,
    timestamp_ltz_value timestamp with local time zone,
    interval_y2m_value  yminterval_unconstrained,
    interval_d2s_value  dsinterval_unconstrained,
    blob_value          blob,
    bfile_value         bfile,
    clob_value          clob,
    sdo_geometry_value  mdsys.sdo_geometry,
    anydata_value       sys.anydata );

type t_values is table of t_value index by pls_integer;

Note:

sdo_geometry_value is only available when SDO_GEOMETRY is installed in the database.

Bind variables

type t_parameter is record (
    name      t_column_name,
    data_type t_data_type,
    value     t_value );

type t_parameters is table of t_parameter index by pls_integer;

Filters

subtype t_filter_type          is pls_integer range 1..27;
subtype t_filter_interval_type is varchar2(2);

type t_filter is record (
    column_name       t_column_name,
    data_type         t_data_type,
    filter_type       t_filter_type,
    filter_values     t_values,
    sql_expression    varchar2(32767),
    search_columns    t_columns,
    null_result       boolean default false,
    is_case_sensitive boolean default true );

type t_filters is table of t_filter index by pls_integer;

Order Bys

subtype t_order_direction is pls_integer range 1..2;
subtype t_order_nulls     is pls_integer range 1..2;

type t_order_by is record (
    column_name   t_column_name,  
    direction     t_order_direction, 
    order_nulls   t_order_nulls );

type t_order_bys is table of t_order_by index by pls_integer;

Columns

type t_column is record (
    name                t_column_name,
    sql_expression      varchar2(4000),
    --
    data_type           t_data_type,
    data_type_length    pls_integer,
    format_mask         varchar2(4000),
    --
    is_required         boolean default false,
    is_primary_key      boolean default false,
    is_query_only       boolean default false,
    is_checksum         boolean default false,
    is_returning        boolean default false );

type t_columns is table of t_column index by pls_integer;

Context Handle

subtype t_context is pls_integer;

Data Source Capabilities

Note:

The data source capabilities filter_* and orderby_* are deprecated and will be removed in a future release.
type t_source_capabilities is record(
    location               t_location,
    --
    pagination             boolean default false,
    --
    allow_fetch_all_rows   boolean default false,
    --
    filtering              boolean default false,
    order_by               boolean default false,
    group_by               boolean default false,
    --
    -- the following filter_* attributes are deprecated, do not use.
    --
    filter_eq              boolean default false,
    filter_not_eq          boolean default false,
    filter_gt              boolean default false,
    filter_gte             boolean default false,
    filter_lt              boolean default false,
    filter_lte             boolean default false,
    filter_null            boolean default false,
    filter_not_null        boolean default false,
    filter_contains        boolean default false,
    filter_not_contains    boolean default false,
    filter_like            boolean default false,
    filter_not_like        boolean default false,
    filter_starts_with     boolean default false,
    filter_not_starts_with boolean default false,
    filter_between         boolean default false,
    filter_not_between     boolean default false,
    filter_in              boolean default false,
    filter_not_in          boolean default false,
    filter_regexp          boolean default false,
    filter_last            boolean default false,
    filter_not_last        boolean default false,
    filter_next            boolean default false,
    filter_not_next        boolean default false,
    --
    -- the following orderby_* attributes are deprecated, do not use.
    --
    orderby_asc            boolean default false,
    orderby_desc           boolean default false,
    orderby_nulls          boolean default false );