Wrapper and Non-Wrapper Data Types

The difference between wrapper and non-wrapper data types lies in their requirements for the use of Oracle Database JPublisher.

Wrapper Data Types

The wrapper data types are listed as follows:
  • PLSQL BOOLEAN
  • TABLE
  • PLSQL TABLE
  • RECORD
  • VARRAY
The following code block shows an example that uses some wrapper data types:
CREATE OR REPLACE PACKAGE WRAPPER_DATA_TYPE_PKG
AS
TYPE PER_INFO_RECORD IS RECORD 
(FIRST_NAME VARCHAR2 (20)
, LAST_NAME VARCHAR2 (20)
, SEX	 VARCHAR2 (1))
, AGE NUMBER (3)
, PER_ID NUMBER
)
TYPE PER_TAB IS table of PER_INFO_RECORD;
PROCEDURE CREATE_PERSONS (P_PERS PER_TAB, P_COMMIT BOOLEAN);
PROCEDURE CREATE_PERSON (P_PER PER_INFO_RECORD, P_STATUS VARCHAR2);
END;
In this example, P_COMMIT is PLSQL BOOLEAN type, P_PERS is TABLE type, and P_PER is PLSQL RECORD type.

Non-Wrapper Data Types

The non-wrapper data types are listed as follows:
  • VARCHAR2
  • LONG
  • CHAR
  • CLOB
  • NUMBER
  • INTEGER
  • DATE
  • FLOAT
  • BINARY_INTEGER
  • PLS_INTEGER

The following diagram shows the difference between wrapper and non-wrapper data types: