Datatype compatibility

Replication Agent for Oracle processes Oracle transactions and passes data to the primary Replication Server.

The primary Replication Server uses the datatype formats specified in the replication definition to receive the data from Replication Agent for Oracle.

Table D-2 describes the conversion of Oracle datatypes to Sybase datatypes.

Table D-2: Oracle to Sybase datatype mapping

Oracle datatype

Oracle length/range

Sybase datatype

Sybase length/range

Notes

CHAR

255 bytes

char

32K

DATE

7 bytes, fixed-length, default format: DD-MM-YY

datetime

8 bytes

Replication Server supports dates from January 1, 1753 to December 31, 9999.

Oracle supports dates from January 1, 4712 BC to December 31, 4712 AD.

LONG

2 GB, variable-length character data

text

2GB

LONG RAW

2 GB, variable-length binary data

image

2GB

BLOB

4 GB, variable-length binary large object

image

2GB

Values over 2GB are truncated.

CLOB

4 GB, variable-length character large object

text

2GB

Values over 2GB are truncated.

NCHAR

255 bytes, multi-byte characters

unichar or char

32K

To use the unichar datatype, the use_rssd parameter must be true and the replication definition must specify a Unicode datatype.

NCLOB

4 GB, variable-length multi-byte character large object

text

2GB

Values over 2GB are truncated.

NVARCHAR2

2000 bytes, variable-length, multi-byte character data

univarchar or varchar

32K

To use the univarchar datatype, the use_rssd parameter must be true and the replication definition must specify a Unicode datatype.

BFILE

4 GB, locator points to large binary file

image

2GB

Values over 2GB are truncated.

MLSLABEL

5 bytes, variable-length binary OS label

Not supported.

NUMBER (p,s)

21 bytes, variable-length numeric data

float, int, real, number, or decimal

float is 4 or 8 bytes. int is 4 bytes. real is 4 bytes. number and decimal are 2 to 17 bytes.

The float datatype can convert to scientific notation if the range is exceeded.

Integers (int) are truncated if they exceed the Replication Server range of 2,147,483,647 to -2,147,483,648 or 1x10-130 to 9.99x1025.

The number and decimal datatypes are truncated if they exceed the range of -1038 to 1038-1.

Oracle precision ranges from 1 to 38 digits. Default precision is 18 digits.

Oracle scale ranges from -84 to 127. Default scale is 0.

RAW

2000 bytes, variable-length binary data

binary or varbinary

32K

ROWID

6 bytes, binary data representing row addresses

char

32K

VARCHAR2

2000 bytes, variable-length character data

varchar

32K