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.