A Data Type Conversion

The gateway converts SQL Server data types to Oracle data types.

For example:

Table A-1 Data Type Mapping and Restrictions

SQL Server Oracle Comment If Oracle uses large varchar (32k)

BIGINT

NUMBER(20)

-

-

BIGINT IDENTITY

NUMBER(20)

-

-

BINARY

RAW

-

-

BIT

NUMBER(3)

-

-

CHAR

CHAR

-

-

DATETIME

DATE

Fractional parts of a second are truncated

-

DECIMAL

NUMBER(p[,s])

-

-

DECIMAL IDENTITY

NUMBER(p[,s])

-

-

FLOAT

FLOAT(53)

-

-

IMAGE

LONG RAW

-

-

INT

NUMBER(10)

-

-

INT IDENTITY

NUMBER(10)

-

-

MONEY

NUMBER(19,4)

-

-

NCHAR

NCHAR

If the size is 1000 or less. If the size is more than 1000, then it will be mapped to LONG Oracle Database Character Set = Unicode, otherwise, it is not supported.

-

NTEXT

LONG

If Oracle DB Character Set = Unicode. Otherwise, it is not supported

-

NVARCHAR

NVARCHAR

-

-

NVARCHAR(MAX)

LONG

4000 < N

If Oracle DB Character Set = Unicode. Otherwise, it is not supported.

32767 < N

NUMERIC

NUMBER(p[,s])

-

-

NUMERIC IDENTITY

NUMBER(p[,s])

-

-

REAL

FLOAT(24)

-

-

SMALLDATETIME

DATE

-

-

SMALLMONEY

NUMBER(10,4)

-

-

SMALLINT

NUMBER(5)

-

-

SMALLINT IDENTITY

NUMBER(5)

-

-

SYSNAME

NVARCHAR

-

-

TEXT

LONG

-

-

TIMESTAMP

RAW

-

-

TINYINT

NUMBER(3)

-

-

TINYINT IDENTITY

NUMBER(3)

-

-

VARBINARY

RAW

1N  2000

1 <= N <= 32767

VARBINARY(MAX)

LONG RAW

2000 < N

N < 32767

VARCHAR

VARCHAR2

N  4000

N <= 32767

VARCHAR(MAX)

LONG

4000 < N

32767 < N

XML

LONG

If Oracle Database Character Set = Unicode. Otherwise, it is not supported.

-