The following tables lists all the data types that Mainframe Connector supports.
COBOL usage type
Supported flags
Condition
Optimized Row Columnar (ORC) type
Type
Decoding behavior (
gsutil cp
)Encoding behavior (
bq export
) COMP1
, COMP2
Double
FLOAT64
Encodes the
String
, Double
, and Float
data types. BINARY
, SIGNED
If signed
Long
INT64
If the value is
NULL
, returns an empty byte array. Encodes
the String
, Integer
, and Long
data
types. BINARY
, UNSIGNED
If unsigned
Long
INT64
If the value is
NULL
, returns an empty byte array. Encodes
the String
, Integer
, and Long
data
types. DISPLAY
If all the following condition are satisfied:
- Name ends with
_BT
or-BT.
- Picture not numeric.
- There is either no field modifier or
NULL_INDICATOR
.
Bytes
BYTES
Is never stored as
NULL
.If the value is
NULL
, returns an empty byte array. DISPLAY
Date
DATE
If an invalid date and
FAIL_ON_INVALID_DATA
is set, an
error is displayed and the record is ignored.If the value is
NULL
, returns an empty byte array. Encodes
the String
, LocalDate
, and Date
data
types. DISPLAY
Timestamp
TIMESTAMP
If an invalid date and
FAIL_ON_INVALID_DATA
is set, an
error is displayed and the record is ignored.If the value is
NULL
, returns an empty byte array. Encodes
the String
and Timestamp
data types. DISPLAY (*)
Picture not numeric, if any. If pictures contains the following:
-
N
andNSYMBOL == NATIONAL
useUTF-16BE
-
N
andNSYMBOL == DBCS
act asDISPLAY-1
-
U
usesUTF8
Bytes
STRING
The following character set transformation is performed:
First, bytes are decoded into characters, and then those characters are encoded into UTF-8-based bytes stored into the column vector. Depending on the
First, bytes are decoded into characters, and then those characters are encoded into UTF-8-based bytes stored into the column vector. Depending on the
EMPTY_STRING_AS_NULL
, data is stored as NULL
.
Depending on TRIM_STRING_SUFFIX
, trailing whitespaces and low
values are trimmed.If the value is
NULL
, returns an empty byte array. Encodes
the String
, LocalDate
, BigDecimal
,
and Timestamp
data types. DISPLAY-1
If the field name ends with
_DBCS
or -DBCS
then use shift-out, shift-in encoding.Bytes
STRING
See DISPLAY (*)
See DISPLAY (*)
DISPLAY (GROUP)
If
VARIABLE_LENGTH_ENABLED
is set, the field is of
variable length, and marked by a group structure of two or three fields,
depending on an extra NULL_INDICATOR
field: - The first field either ends with
-LEN
or with the value set byVARIABLE_LENGTH_LEN_SUFFIX
. - The second field either ends with
-TEXT
or with the value set byVARIABLE_LENGTH_DATA_SUFFIX
.
Bytes
STRING
The data part is decoded as
DISPLAY
, but is never stored as NULL
.If the value is
NULL
, returns an empty byte array. Encodes
the String
, LocalDate
, and BigDecimal
data types. PACKED DECIMAL
Decimal64
NUMERIC
Decode as
If the data is invalid, and
NULL
, if all the bytes are: - Either spaces, high, or low, and
- Not
FAIL_ON_INVALID_DATA
or, -
FAIL_ON_INVALID_DATA
and, -
EMPTY_VALUES_ARE_NULL
.
If the data is invalid, and
FAIL_ON_INVALID_DATA
is set, an
error is displayed, and the record is ignored.If the value is
NULL
, returns an empty byte array. Encodes
the String
and BigDecimal
data type. ZONED
precision <= 18 && scale == 0
Long
INT64
Decode as
If the data is invalid, and
Decode into
NULL
, if all the bytes are: - Either spaces, high, or low, and
- Not
FAIL_ON_INVALID_DATA
or, -
FAIL_ON_INVALID_DATA
and, -
EMPTY_VALUES_ARE_NULL
.
If the data is invalid, and
FAIL_ON_INVALID_DATA
is set, an
error is displayed, and the record is ignored.Decode into
long
assuming EBCDIC
encoding for The sign
nibble.If the value is
NULL
, returns an empty byte array. Encodes
the String
, Long
and BigDecimal
data types. ZONED
precision <= 18
Decimal64
NUMERIC
Decode as
If the data is invalid, and
Decode into
NULL
, if all the bytes are: - Either spaces, high, or low, and,
- Not
FAIL_ON_INVALID_DATA
or, -
FAIL_ON_INVALID_DATA
and, -
EMPTY_VALUES_ARE_NULL
.
If the data is invalid, and
FAIL_ON_INVALID_DATA
is set, an
error is displayed, and the record is ignored.Decode into
long
assuming EBCDIC
encoding for sign
nibble.If the value is
NULL
, returns an empty byte array. Encodes
the String
, Long
and BigDecimal
data
types. ZONED
18 < precision <= 38
Decimal
BIGNUMERIC
Decode as
If the data is invalid, and
Decode into
NULL
, if all the bytes are: - Either spaces, high, or low, and,
- Not
FAIL_ON_INVALID_DATA
or, -
FAIL_ON_INVALID_DATA
and, -
EMPTY_VALUES_ARE_NULL
.
If the data is invalid, and
FAIL_ON_INVALID_DATA
is set, an
error is displayed, and the record is ignored.Decode into
long
assuming EBCDIC
encoding for sign
nibble.If the value is
NULL
, returns an empty byte array. Encodes
the String
, Long
, BigInteger
, and BigDecimal
data type.