Eight-byte integers

The DataBlade® API supports the following data types for eight-byte integer values.
DataBlade API eight-byte integers Description
mi_int8 Signed eight-byte integer value
mi_unsigned_int8 Unsigned eight-byte integer value
mi_bigint Signed eight-byte integer value
mi_unsigned_bigint Unsigned eight-byte integer value
The DataBlade API ensures that these integer data types are eight bytes on all computer architectures. Use these integer data types to hold values for the following SQL eight-byte integer data types:
  • The SQL INT8 data type and the BIG INT data type can hold integer values in the range -9,223,372,036,854,775,807 - 9,223,372,036,854,775,807 [or -(263-1) - 263-1].
  • The SQL SERIAL8 and BIGSERIAL data types hold eight-byte integer values that the database server automatically assigns when a value is inserted in the column.

The mi_int8 and mi_unsigned_int8 data types hold the internal (binary) format of an INT8 or SERIAL8 value. The mi_bigint and mi_unsigned_bigint data types hold the internal (binary) format of an BIGINT or BIGSERIAL value.

Values of the mi_int8, mi_unsigned_int8, mi_bigint, and mi_unsigned_bigint data types cannot fit into an MI_DATUM structure. They must be passed by reference within C UDRs.

All data types, including mi_int8, mi_unsigned_int8, mi_bigint, and mi_unsigned_bigint must be passed by reference within client LIBMI applications.