Mainframe Connector data types

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.
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.
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.
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.
Picture not numeric, if any. If pictures contains the following:
  • N and NSYMBOL == NATIONAL use UTF-16BE
  • N and NSYMBOL == DBCS act as DISPLAY-1
  • U uses UTF8
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.
If the field name ends with _DBCS or -DBCS then use shift-out, shift-in encoding.
Bytes
STRING
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 by VARIABLE_LENGTH_LEN_SUFFIX .
  • The second field either ends with -TEXT or with the value set by VARIABLE_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.
Decimal64
NUMERIC
Decode as 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.
precision <= 18 && scale == 0
Long
INT64
Decode as 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.
precision <= 18
Decimal64
NUMERIC
Decode as 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.
18 < precision <= 38
Decimal
BIGNUMERIC
Decode as 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.
Design a Mobile Site
View Site in Mobile | Classic
Share by: