in modules/platforms/cpp/ignite/odbc/type_traits.cpp [279:350]
odbc_native_type to_driver_type(std::int16_t type) {
switch (type) {
case SQL_C_CHAR:
return odbc_native_type::AI_CHAR;
case SQL_C_WCHAR:
return odbc_native_type::AI_WCHAR;
case SQL_C_SSHORT:
case SQL_C_SHORT:
return odbc_native_type::AI_SIGNED_SHORT;
case SQL_C_USHORT:
return odbc_native_type::AI_UNSIGNED_SHORT;
case SQL_C_SLONG:
case SQL_C_LONG:
return odbc_native_type::AI_SIGNED_LONG;
case SQL_C_ULONG:
return odbc_native_type::AI_UNSIGNED_LONG;
case SQL_C_FLOAT:
return odbc_native_type::AI_FLOAT;
case SQL_C_DOUBLE:
return odbc_native_type::AI_DOUBLE;
case SQL_C_BIT:
return odbc_native_type::AI_BIT;
case SQL_C_STINYINT:
case SQL_C_TINYINT:
return odbc_native_type::AI_SIGNED_TINYINT;
case SQL_C_UTINYINT:
return odbc_native_type::AI_UNSIGNED_TINYINT;
case SQL_C_SBIGINT:
return odbc_native_type::AI_SIGNED_BIGINT;
case SQL_C_UBIGINT:
return odbc_native_type::AI_UNSIGNED_BIGINT;
case SQL_C_BINARY:
return odbc_native_type::AI_BINARY;
case SQL_C_DATE:
case SQL_C_TYPE_DATE:
return odbc_native_type::AI_TDATE;
case SQL_C_TIME:
case SQL_C_TYPE_TIME:
return odbc_native_type::AI_TTIME;
case SQL_C_TIMESTAMP:
case SQL_C_TYPE_TIMESTAMP:
return odbc_native_type::AI_TTIMESTAMP;
case SQL_C_NUMERIC:
return odbc_native_type::AI_NUMERIC;
case SQL_C_GUID:
return odbc_native_type::AI_GUID;
case SQL_C_DEFAULT:
return odbc_native_type::AI_DEFAULT;
default:
return odbc_native_type::AI_UNSUPPORTED;
}
}