Attribute - Generation specific to Oracle

 

Mapping types

The correspondence between the types of the different "spaces" is presented in the table below.

 

Type

Tagged value

ORACLE data type

integer

 

INTEGER

integer

{short}

INTEGER

integer

{long}

INTEGER

integer

{unsigned}

INTEGER

boolean

 

INTEGER

real

 

FLOAT

real

{long}

FLOAT

string(n)

 

VARCHAR2(n)

char

 

CHAR (1)

set (n) of char

{array}

VARCHAR2 (n)

 

Note:      The types referred to as ORACLE data types here correspond to the internal types described in the Programmer's Guide to Oracle Precompilers.

 

 

Using specific types

Oracle allows the use of specific types, such as LONG, RAW, LONG RAW, LONG VARCHAR, and so on, and Objecteering SQL Designer provides attribute parameterization, which allows you to use these types.


To use specific Oracle types, you should:

·         either position the {sqlType(specific_type)} tagged value, for example {sqlType(raw)} (for further information on this tagged value, please see "Tagged value types").

·         or use the "SQL type" combobox in the SQL tab of the auxiliary window on an attribute (for more information on the SQL tab of the auxiliary window, please see "The auxiliary window and SQL Designer").

 

 

Parameterizing specific types

Parameters can be defined on attribute types through the "Type constraint/String size" field on the attribute concerned (this field appears in the "Attribute" dialog box).

 

 

Available types in Oracle

 

Type

Parameterizable

Code generated

bfile

No

BFILE

blob

No

BLOB

clob

No

CLOB

date

No

DATE

long

No

LONG

longraw

No

LONG RAW

nclob

No

NCLOB

number

Yes

X = The parameter defined in the "Type constraint/String size” field in the "Attribute" dialog box.

NUMBER(X) if a parameter X has been provided.

NUMBER if no parameter has been provided.

raw

Yes

X = The parameter defined in the "Type constraint/String size” field in the "Attribute" dialog box.

RAW(X) if a parameter X has been provided.

RAW if no parameter has been provided.

rowid

No

ROWID

timestamp

No

TIMESTAMP