Skip to main content

Target data type support & mapping for Db2 for z/OS sources

The table below details how Striim maps the data types of a Db2 for z/OS source to the data types of a target such as Azure Synapse, BigQuery, Databricks, and so on when you create an application using a wizard with Auto Schema Creation, perform an initial load using Database Reader with Create Schema enabled, or run the schema conversion utility, or when Striim schema evolution creates or alters target tables.

If your screen is not wide enough to display the whole table, click in a cell and drag left to view the right-hand columns.

Db2 for z/OS Data Type

Azure Synapse

BigQuery

Databricks

Db2 for z/OS

Fabric Mirror

Iceberg

MariaDB

Microsoft Fabric

MySQL

Oracle

PostgreSQL

Snowflake

Spanner

Spanner PG Dialect

SQL Server

Vertica

Yellowbrick

BIGINT

bigint

int64

bigint

bigint

long

long

bigint

bigint

bigint

int

bigint

integer

INT64

int

bigint

integer

bigint

BINARY(p)

binary(p), if (p) <= 8000

binary, if (p) > 8000*

bytes, if (p) > 9223372036854775807*

bytes(p), if (p) <= 9223372036854775807

binary

binary(255), if (p) <= 127

blob, if (p) > 127*

bytes

binary

binary(p), if (p) <= 255

varbinary(p), if (p) <= 8000

varbinary(max), if (p) > 8000*

binary(p), if (p) <= 255

BLOB

bytea, if (p) <= 2147483647

BINARY, if (p) <= 8388608

BINARY, if (p) > 8388608*

BYTES(MAX), if (p) > 10485760*

BYTES(p), if (p) <= 10485760

bytea, if (p) <= 1048576

binary(p), if (p) <= 8000

binary, if (p) > 8000*

binary(p), if (p) <= 65000

long varbinary(p), if 65000 <= (p) <= 32000000*

character varying(40000)

BLOB

varbinary(8000)

bytes(p)

binary

blob(p)

bytes

binary

longblob

varbinary(max)

longblob

BLOB

bytea

BINARY

BYTES(p)

bytea

varbinary(max)

long varbinary(p)

Not supported

BLOB(p)

varbinary(8000), if (p) > 8000*

varbinary(p), if (p) <= 8000

bytes, if (p) > 9223372036854775807

bytes(p), if (p) <= 9223372036854775807

binary

blob(p), if (p) <= 2147483647

bytes

binary

longblob, if (p) <= 2147483647

varbinary(p), if (p) <= 8000

varbinary(max), if (p) > 8000*

longblob, if (p) <= 2147483647

BLOB, if (p) <= 4000

bytea, if (p) <= 2147483647

BINARY, if (p) <= 8388608

BYTES(MAX), if (p) > 10485760

BYTES(p), if (p) <= 10485760

bytea, if (p) <= 1048576

varbinary(p), if (p) <= 8000

varbinary(max), if (p) > 8000*

long varbinary(p), if (p) <= 32000000

character varying(p), if (p) <= 64000

CHAR

character(p)

string

string

character(p)

string

char(p)

character(p)

varchar(p)

character(p)

character(p)

character(p)

character(p)

STRING(p)

varchar(p)

character(p)

character(p)

character(p)

CHAR(p)

character(p), if (p) <= 8000

varchar(8000), if (p) > 8000*

string

string

clob(p), if 255 <= (p) <= 2147483647*

character(p), if (p) <= 255

string

string, if (p) > 2147483647

char(p), if (p) <= 2147483647

longtext, if 255 <= (p) <= 2147483647*

character(p), if (p) <= 255

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

longtext, if 255 <= (p) <= 2147483647*

character(p), if (p) <= 255

clob, if (p) > 2000*

character(p), if (p) <= 2000

character(p), if (p) <= 10485760

text, if (p) > 10485760*

character, if (p) > 16777216*

character(p), if (p) <= 16777216

STRING(p), if (p) <= 2621440

varchar(p), if (p) <= 1048576

text, if (p) > 1048576*

character(p), if (p) <= 8000

varchar(max), if (p) > 8000*

character(p), if (p) <= 65000

long varchar(p), if 65000 <= (p) <= 32000000*

character(p), if (p) <= 64000

CLOB

varchar(8000)

string

string

clob(p)

string

string

MEDIUMTEXT

varchar(max)

MEDIUMTEXT

clob

text

VARCHAR

STRING(p)

text

varchar(max)

long varchar(p)

character varying

CLOB(p)

varchar(p), if (p) <= 8000

varchar(8000), if (p) > 8000*

string

string

clob(p), if (p) <= 2147483647

string

string

TINYTEXT, if (p) <= 255

LONGTEXT, if 16777215 <= (p) <= 2147483647

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

TINYTEXT, if (p) <= 255

LONGTEXT, if 16777215 <= (p) <= 2147483647

clob

text

VARCHAR

STRING(MAX), if (p) > 2621440

STRING(p), if (p) <= 2621440

text, if (p) <= 1048576

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

long varchar(p), if (p) <= 32000000

character varying, if (p) > 64000*

character varying(p), if (p) <= 64000

DATE

date

date

date

date

date

date

date

date

date

date

date

date

DATE

date

date

date

date

DBCLOB

varchar(8000)

string

string

clob(p)

string

string

MEDIUMTEXT

varchar(max)

MEDIUMTEXT

clob

text

VARCHAR

STRING(p)

text

varchar(max)

long varchar(p)

character varying

DBCLOB(p)

varchar(p), if (p) <= 8000

varchar(8000), if (p) > 8000*

string

string

clob(p), if (p) <= 2147483647

string

string

TINYTEXT, if (p) <= 255

LONGTEXT, if 16777215 <= (p) <= 2147483647

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

TINYTEXT, if (p) <= 255

LONGTEXT, if 16777215 <= (p) <= 2147483647

clob

text

VARCHAR

STRING(MAX), if (p) > 2621440

STRING(p), if (p) <= 2621440

text, if (p) <= 1048576

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

long varchar(p), if (p) <= 32000000

character varying, if (p) > 64000*

character varying(p), if (p) <= 64000

DECFLOAT

float

float64

double

double

double

double

double

float

double

nclob

character varying

VARCHAR

STRING(MAX)

float8

varchar(8000)

Not supported

double precision

DECFLOAT(p=16)

float

float64

double

double

double

double

double

float

double

VARCHAR2(4000), if 126 <= (p) <= 4000

character varying

VARCHAR

STRING(MAX)

float8

varchar(8000)

numeric(p,s), if 53 <= (p) <= 1024, if (s) <= 1024

double precision

DECFLOAT(p=34)

float

float64

double, if (p=34) > 38

double

double

double, if (p=34) > 10

double, if (p=34) > 38, if (s) > 30*

float

double, if (p=34) > 38, if (s) > 30*

nclob, if (p=34) > 4000*

character varying, if (p=34) > 307*

VARCHAR, if (p=34) > 307*

STRING(MAX), if (p=34) > 308, if (s) > 15*

float8

varchar(8000), if (p=34) > 53*

Not supported

double precision, if (p=34) > 24*

DECIMAL

numeric(p,s)

numeric

decimal(p,s)

numeric(p,s)

decimal

decimal(p,s)

decimal(p,s)

decimal(p,s)

decimal(p,s)

number(p,s)

numeric(p,s)

numeric(p,s)

NUMERIC

numeric

numeric(p,s)

numeric(p,s)

decimal(p,s)

DECIMAL(p,0)

numeric(p,s), if (p) <= 38, if (s) <= 38

numeric, if (p) <= 29, if (s) <= 9

decimal(p,s), if (p) <= 38, if (s) <= 37

numeric(p,s), if (p) <= 31, if (s) <= 30

decimal, if (p) <= 38

decimal(p,s), if (p) <= 38, if (s) <= 38

decimal(p,s), if (p) <= 65, if (s) <= 30

decimal(p,s), if (p) <= 38, if (s) <= 38

decimal(p,s), if (p) <= 65, if (s) <= 30

number(p,s), if (p) <= 38, if (s) <= 127

numeric(p,s), if (p) <= 1000, if (s) <= 1000

numeric(p,s), if (p) <= 38, if (s) <= 37

NUMERIC, if (p) <= 38, if (s) <= 9

numeric, if (p) <= 131072, if (s) <= 16384

numeric(p,s), if (p) <= 38, if (s) <= 38

numeric(p,s), if (p) <= 1024, if (s) <= 1024

decimal(p,s), if (p) <= 38, if (s) <= 38

DECIMAL(p,s)

varchar(8000), if (s) > 38*

varchar(8000), if (p,s) > 38*

numeric(p,s), if (p) <= 38, if (s) <= 38

string, if (s) > 38*

string, if (p,s) > 39*

numeric, if (p) <= 29, if (s) <= 9

bignumeric, if 29 <= (p) <= 39, if 9 <= (s) <= 38

string, if (p,s) > 38*

decimal(p,s), if (p) <= 38, if (s) <= 37

string, if (s) > 37*

numeric(p,s), if (p) <= 31, if (s) <= 30

varchar(1000), if (p,s) > 31*

varchar(1000), if (s) > 30*

string, if (p,s) > 38*

decimal, if (p) <= 38

string, if (p,s) > 38*

string, if (s) > 38*

decimal(p,s), if (p) <= 38, if (s) <= 38

decimal(p,s), if (p) <= 65, if (s) <= 30

TEXT, if (p,s) > 65*

TEXT, if (s) > 30*

varchar(max), if (s) > 38*

varchar(max), if (p,s) > 38*

decimal(p,s), if (p) <= 38, if (s) <= 38

decimal(p,s), if (p) <= 65, if (s) <= 30

TEXT, if (p,s) > 65*

TEXT, if (s) > 30*

number, if (s) > 127*

number, if (p,s) > 38*

number(p,s), if (p) <= 38, if (s) <= 127

double precision, if (s) > 1000

double precision, if (p,s) > 1000

numeric(p,s), if (p) <= 1000, if (s) <= 1000

VARCHAR, if (s) > 37*

numeric(p,s), if (p) <= 38, if (s) <= 37

VARCHAR, if (p,s) > 38*

STRING(MAX), if (p,s) > 308, if (s) > 15*

NUMERIC, if (p) <= 38, if (s) <= 9

numeric, if (p) <= 131072, if (s) <= 16384

varchar(8000), if (s) > 38*

varchar(8000), if (p,s) > 38*

numeric(p,s), if (p) <= 38, if (s) <= 38

numeric(p,s), if (p) <= 1024, if (s) <= 1024

character varying, if (s) > 38*

character varying, if (p,s) > 38*

decimal(p,s), if (p) <= 38, if (s) <= 38

DOUBLE

float

float64

double

double

double

double

double

float

double

double precision

double precision

float

FLOAT64

float8

float(p)

float(p)

double precision

DOUBLE(p)

float

float64

double

double

double

double

double

float

double

double precision, if (p) <= 126

VARCHAR2(4000), if 126 <= (p) <= 4000*

double precision, if 37 <= (p) <= 307, if 7 <= (s) <= 15

double precision, if 307 <= (p) <= 307*

double precision, if (s) > 15*

float, if 307 <= (p) <= 307*

float, if (p) <= 307, if (s) <= 34

float, if (s) > 34*

STRING(MAX), if (p) > 308*

STRING(MAX), if (s) > 15*

FLOAT64, if (p) <= 308, if (s) <= 15

float8

float(p), if 53 <= (p) <= 53*

float(p), if (p) <= 53, if (s) <= 16

float(p), if (s) > 16*

numeric(p,s), if 53 <= (p) <= 1024*

float(p), if (p) <= 53

double precision

GRAPHIC(p)

nchar(p), if (p) <= 4000

nvarchar(4000), if (p) > 4000*

string

string

clob(p), if 255 <= (p) <= 2147483647*

character(p), if (p) <= 255

string

string, if (p) > 2147483647

char(p), if (p) <= 2147483647

nchar(p), if (p) <= 255

nvarchar(p), if 255 <= (p) <= 65535

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

nchar(p), if (p) <= 255

nvarchar(p), if 255 <= (p) <= 65535

nchar(p), if (p) <= 1000

nclob, if (p) > 1000*

character(p), if (p) <= 10485760

text, if (p) > 10485760*

character, if (p) > 16777216*

character(p), if (p) <= 16777216

STRING(p), if (p) <= 2621440

varchar(p), if (p) <= 1048576

text, if (p) > 1048576*

nchar(p), if (p) <= 4000

nvarchar(max), if (p) > 4000*

character(p), if (p) <= 65000

long varchar(p), if 65000 <= (p) <= 32000000*

character(p), if (p) <= 64000

INTEGER

integer

int64

integer

integer

int

integer

integer

int

integer

int

integer

integer

INT64

int

integer

integer

integer

REAL(p)

float(p), if (p) <= 53

float64, if (p) <= 308, if (s) <= 16

float, if (p) <= 38

double

double

double

float, if (p) <= 38

float(p), if (p) <= 53

float, if (p) <= 38

float, if (p) <= 126

double precision

float, if (p) <= 307

FLOAT64, if (p) <= 308, if (s) <= 15

float4, if (p) <= 38

float(p), if (p) <= 53

float(p), if (p) <= 53

real

ROWID

varchar(p)

string

string

clob(p)

string

string

TINYTEXT

varchar(p)

TINYTEXT

clob

text

VARCHAR

STRING(p)

text

varchar(p)

long varchar(p)

character varying(p)

SMALLINT

smallint

int64

smallint

smallint

int

short

smallint

smallint

smallint

int

smallint

integer

INT64

int

smallint

integer

smallint

TIME

time

time

string

time

time-millis

string

time(s)

time(6)

time(s)

VARCHAR2(150)

time(s)

time

STRING(150)

varchar(150)

time

time(s)

time

TIMESTAMP

datetime2

timestamp

timestamp

timestamp

timestamp-millis

timestamp_ntz

datetime(s)

datetime2(6)

datetime(s)

timestamp(s)

timestamp(s) without time zone

timestamp

TIMESTAMP

timestamptz

datetime2

timestamp(s)

timestamp

TIMESTAMP WITH TIME ZONE

datetimeoffset

timestamp

timestamp

timestamp with time zone

string

timestamp

timestamp

datetime2(6)

timestamp

timestamp with time zone

timestamp(s) with time zone

timestamp with time zone

TIMESTAMP

timestamptz

datetimeoffset

timestamp(s) with time zone

timestamptz

TIMESTAMP WITH TIME ZONE(s)

datetimeoffset

timestamp, if (s) <= 6

timestamp

timestamp with time zone

string

timestamp

timestamp

varchar(150), if (s) > 6*

datetime2(6), if (s) <= 6

timestamp

timestamp with time zone

timestamp(s) with time zone, if (p) <= 35, if (s) <= 6

timestamp with time zone, if 35 <= (p) <= 35, if (s) > 6*

timestamp with time zone

TIMESTAMP

timestamptz, if 36 <= (p) <= 36*

timestamptz, if (p) <= 36, if (s) <= 6

datetimeoffset

timestamp(s) with time zone, if (p) <= 35, if (s) <= 6

timestamp with time zone, if (s) > 35, if (s) > 6*

timestamptz

TIMESTAMP(s)

datetime2

timestamp, if (s) <= 6

timestamp

timestamp

timestamp-millis

timestamp_ntz

varchar(34), if (s) > 6*

datetime(s), if (s) <= 6

varchar(150), if (s) > 6*

datetime2(6), if (s) <= 6

varchar(34), if (s) > 6*

datetime(s), if (s) <= 6

timestamp(s), if (s) <= 9

timestamp, if (s) > 9*

timestamp without time zone, if 29 <= (p) <= 29, if (s) > 6*

timestamp(s) without time zone, if (p) <= 29, if (s) <= 6

timestamp

TIMESTAMP

timestamptz, if 36 <= (p) <= 36*

timestamptz, if (p) <= 36, if (s) <= 6

datetime2

timestamp, if (s) > 29, if (s) > 6*

timestamp(s), if (p) <= 29, if (s) <= 6

timestamp

VARBINARY(p)

varbinary(8000), if (p) > 8000*

varbinary(p), if (p) <= 8000

bytes, if (p) > 9223372036854775807*

bytes(p), if (p) <= 9223372036854775807

binary

blob, if (p) > 1011*

varbinary(4046), if (p) <= 1011

bytes

binary

varbinary(65535), if (p) > 65535

varbinary(p), if (p) <= 65535

varbinary(p), if (p) <= 8000

varbinary(max), if (p) > 8000*

varbinary(65535), if (p) > 65535

varbinary(p), if (p) <= 65535

BLOB

bytea, if (p) <= 2147483647

bytea, if (p) > 2147483647*

VARBINARY

BYTES(MAX), if (p) > 10485760*

BYTES(p), if (p) <= 10485760

bytea, if (p) <= 1048576

bytea, if (p) > 1048576*

varbinary(p), if (p) <= 8000

varbinary(max), if (p) > 8000*

varbinary(p), if (p) <= 65000

long varbinary(p), if 65000 <= (p) <= 32000000*

character varying, if (p) > 64000*

character varying(p), if (p) <= 64000

VARCHAR(p)

varchar(p), if (p) <= 8000

varchar(8000), if (p) > 8000*

string

string

varchar(p), if (p) <= 4045

clob(p), if 4045 <= (p) <= 2147483647*

string

string, if (p) > 2147483647

varchar(p), if (p) <= 2147483647

varchar(p), if (p) <= 65535

longtext, if 65535 <= (p) <= 2147483647*

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

varchar(p), if (p) <= 65535

longtext, if 65535 <= (p) <= 2147483647*

clob, if (p) > 4000*

VARCHAR2(p), if (p) <= 4000

character varying(p), if (p) <= 10485760

character varying, if (p) > 10485760*

VARCHAR, if (p) > 16777216*

VARCHAR(p), if (p) <= 16777216

STRING(MAX), if (p) > 2621440

STRING(p), if (p) <= 2621440

varchar(p), if (p) <= 1048576

text, if (p) > 1048576*

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

varchar(p), if (p) <= 65000

long varchar(p), if 65000 <= (p) <= 32000000*

character varying, if (p) > 64000*

character varying(p), if (p) <= 64000

VARGRAPHIC(p)

nvarchar(p), if (p) <= 4000

nvarchar(4000), if (p) > 4000*

string

string

varchar(p), if (p) <= 4045

clob(p), if 4045 <= (p) <= 2147483647

string

string, if (p) > 2147483647

varchar(p), if (p) <= 2147483647

longtext, if (p) > 65535*

nvarchar(p), if (p) <= 65535

varchar(max), if (p) > 8000*

varchar(p), if (p) <= 8000

longtext, if (p) > 65535*

nvarchar(p), if (p) <= 65535

nclob, if (p) > 4000*

NVARCHAR2(p), if (p) <= 4000

character varying(p), if (p) <= 10485760

character varying, if (p) > 10485760*

VARCHAR, if (p) > 16777216*

VARCHAR(p), if (p) <= 16777216

STRING(MAX), if (p) > 2621440

STRING(p), if (p) <= 2621440

varchar(p), if (p) <= 1048576

text, if (p) > 1048576*

nvarchar(p), if (p) <= 4000

nvarchar(max), if (p) > 4000*

varchar(p), if (p) <= 65000

long varchar(p), if 65000 <= (p) <= 32000000*

character varying, if (p) > 64000*

character varying(p), if (p) <= 64000

XML

varchar(8000)

string

string

xml

string

string

LONGTEXT

varchar(max)

LONGTEXT

xmltype

xml

varchar

STRING(MAX)

varchar(p)

xml

long varchar(10000000)

character varying