10.12.2012 Views

Oracle C++ Call Interface Programmer's Guide

Oracle C++ Call Interface Programmer's Guide

Oracle C++ Call Interface Programmer's Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Internal Datatypes<br />

Character Strings and Byte Arrays<br />

Universal Rowid (UROWID)<br />

Table 4–1 <strong>Oracle</strong> Internal Datatypes (Cont.)<br />

Internal Datatype Code Maximum Internal Length<br />

TIMESTAMP WITH TIME ZONE 181 13 bytes<br />

UROWID 208 4000 bytes<br />

User-defined type (object type, VARRAY, nested table) 108<br />

VARCHAR2, NVARCHAR2 1 4000 bytes<br />

See Also:<br />

■ <strong>Oracle</strong>9i SQL Reference<br />

■ <strong>Oracle</strong>9i Database Concepts<br />

You can use five <strong>Oracle</strong> internal datatypes to specify columns that contain either<br />

characters or arrays of bytes: CHAR, VARCHAR2, RAW, LONG, and LONG RAW.<br />

CHAR, VARCHAR2, and LONG columns normally hold character data. RAW and LONG<br />

RAW hold bytes that are not interpreted as characters, for example, pixel values in a<br />

bitmapped graphics image. Character data can be transformed when passed<br />

through a gateway between networks. For example, character data passed between<br />

machines by using different languages (where single characters may be represented<br />

by differing numbers of bytes) can be significantly changed in length. Raw data is<br />

never converted in this way.<br />

The database designer is responsible for choosing the appropriate <strong>Oracle</strong> internal<br />

datatype for each column in a table. You must be aware of the many possible ways<br />

that character and byte-array data can be represented and converted between<br />

variables in the OCCI program and <strong>Oracle</strong> database tables.<br />

The universal rowid (UROWID) is a datatype that can store both the logical and the<br />

physical rowid of rows in <strong>Oracle</strong> tables and in foreign tables, such as DB2 tables<br />

accessed through a gateway. Logical rowid values are primary key-based logical<br />

identifiers for the rows of index organized tables.<br />

To use columns of the UROWID datatype, the value of the COMPATIBLE initialization<br />

parameter must be set to 8.1 or higher.<br />

The following OCCI_SQLT types can be bound to universal rowids:<br />

4-4 <strong>Oracle</strong> <strong>C++</strong> <strong>Call</strong> <strong>Interface</strong> Programmer’s <strong>Guide</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!