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) |
|---|---|---|---|---|---|---|
|
Double | FLOAT64 |
Encodes the String, Double, and
Float data types. |
|||
|
If signed | Long | INT64 |
If the value is NULL, returns an empty byte array. Encodes
the String, Integer, and Long data
types. |
||
|
If unsigned | Long | INT64 |
If the value is NULL, returns an empty byte array. Encodes
the String, Integer, and Long data
types. |
||
|
NULL_INDICATOR | If all the following condition are satisfied:
|
Bytes | BYTES |
Is never stored as NULL. |
If the value is NULL, returns an empty byte array. |
|
FAIL_ON_INVALID_DATA | DATE field which uses the DATE_CONVERTER command | 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. |
|
FAIL_ON_INVALID_DATA | TIMESTAMP field which uses the TIMESTAMP_CONVERTER command | 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. |
|
NULL_INDICATOR EMPTY_STRING_AS_NULL TRIM_STRING_SUFFIX | Picture not numeric, if any. If pictures contains the following:
|
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 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. |
|
NULL_INDICATOR EMPTY_STRING_AS_NULL TRIM_STRING_SUFFIX | If the field name ends with _DBCS or -DBCS
then use shift-out, shift-in encoding.
|
Bytes | STRING |
See DISPLAY (*) | See DISPLAY (*) |
|
NULL_INDICATOR EMPTY_STRING_AS_NULL TRIM_STRING_SUFFIX | See DISPLAY (*) | Bytes | STRING |
See DISPLAY (*) | See DISPLAY (*) |
|
NULL_INDICATOR EMPTY_STRING_AS_NULL TRIM_STRING_SUFFIX | See DISPLAY (*) | Bytes | STRING |
See DISPLAY (*) | See DISPLAY (*) |
|
VARIABLE_LENGTH_ENABLED VARIABLE_LENGTH_LEN_SUFFIX VARIABLE_LENGTH_DATA_SUFFIX | 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:
|
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. |
|
EMPTY_VALUES_ARE_NULL FAIL_ON_INVALID_DATA | Decimal64 | NUMERIC |
Decode as NULL, if all the bytes are:
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. |
|
|
EMPTY_VALUES_ARE_NULL FAIL_ON_INVALID_DATA | precision <= 18 && scale == 0 |
Long | INT64 |
Decode as NULL, if all the bytes are:
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. |
|
EMPTY_VALUES_ARE_NULL FAIL_ON_INVALID_DATA | precision <= 18 |
Decimal64 | NUMERIC |
Decode as NULL, if all the bytes are:
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. |
|
EMPTY_VALUES_ARE_NULL FAIL_ON_INVALID_DATA | 18 < precision <= 38 |
Decimal | BIGNUMERIC |
Decode as NULL, if all the bytes are:
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. |