DMSII and Relational Database Data Types

The DBEngine retrieves the requested DMSII data, and then DBServer passes the data to the DATABridge Client, where it is assigned to standard relational database data types.

The following table lists equivalent data types for DMSII, Microsoft SQL Server, and Oracle / DB2.

DMSII Data Type

SQL Server

Oracle

DB2

ALPHA (<= char_limit bytes)

CHAR

CHAR

CHAR

ALPHA (>char_limit bytes)

TEXT

VARCHAR2

VARCHAR

BOOLEAN

BIT

NUMBER(1)

SMALLINT

FIELD:

FIELD(n) where n is < 16

FIELD(n) where n is < 32

FIELD(n) where n >= 32

 

SMALLINT

INT

BIGINT3

 

NUMBER(5)

NUMBER(10)

NUMBER(10–15)

 

SMALLINT

INT

DECIMAL
(10-15)

NUMERIC:

NUMBER(n) where n is a DMSII declared length <= 2

NUMBER(n) where n is a DMSII declared length <= 4

NUMBER(n) where n is a DMSII declared length <= 9

NUMBER(n) where n is a DMSII declared length <= 15

NUMBER(n) where n is a DMSII declared length >15

NUMBER(n,m) where n is a DMSII declared length and m is the number of places after the decimal point.

 

TINYINT4

SMALLINT

INT

BIGINTc

DEC(n)

DEC(n,m)

 

NUMBER(n)

NUMBER(n)

NUMBER(n)

NUMBER(n)

NUMBER(n)

NUMBER(n,m)

 

SMALLINT

SMALLINT

SMALLINT

DECIMAL (n)

DECIMAL (n)

DECIMAL (n, m)

REAL:

REAL(n) where n is a DMSII declared length <= 2

REAL(n) where n is a DMSII declared length <= 4

REAL(n) where n is a DMSII declared length <= 9

REAL(n) where n is a DMSII declared length > 9

REAL(n,m) where n is the DMSII declared length and m is the number of places after the decimal point.

REAL, with no precision or scale

 

TINYINT

SMALLINT

INT

DEC

DEC(n,m)

FLOAT

 

NUMBER(n)

NUMBER(n)

NUMBER(n)

NUMBER(n)

NUMBER(n,m)

FLOAT

 

SMALLINT

SMALLINT

INT

INT

DECIMAL

FLOAT

Date encoding methods (For information, see Cloning DMSII Dates, Times, and Date/Times.

DATETIME
SMALLDATETIME

DATE

TIMESTAMP

a. VARCHAR if the configuration parameter use_varchar is set to True.

b. VARCHAR2 if the configuration parameter use_varchar is set to True.

c. If the configuration parameter use_bigint is set to No, DEC(n) will be used instead.

d. Note that if the number is signed, SMALLINT is used instead. TINYINT is an unsigned quantity in SQL Server.