in src/main/protocol-impl/java/com/mysql/cj/protocol/a/NativeUtils.java [63:97]
public static int getBinaryEncodedLength(int type) {
switch (type) {
case MysqlType.FIELD_TYPE_TINY:
return 1;
case MysqlType.FIELD_TYPE_SHORT:
case MysqlType.FIELD_TYPE_YEAR:
return 2;
case MysqlType.FIELD_TYPE_LONG:
case MysqlType.FIELD_TYPE_INT24:
case MysqlType.FIELD_TYPE_FLOAT:
return 4;
case MysqlType.FIELD_TYPE_LONGLONG:
case MysqlType.FIELD_TYPE_DOUBLE:
return 8;
case MysqlType.FIELD_TYPE_TIME:
case MysqlType.FIELD_TYPE_DATE:
case MysqlType.FIELD_TYPE_DATETIME:
case MysqlType.FIELD_TYPE_TIMESTAMP:
case MysqlType.FIELD_TYPE_TINY_BLOB:
case MysqlType.FIELD_TYPE_MEDIUM_BLOB:
case MysqlType.FIELD_TYPE_LONG_BLOB:
case MysqlType.FIELD_TYPE_BLOB:
case MysqlType.FIELD_TYPE_VAR_STRING:
case MysqlType.FIELD_TYPE_VARCHAR:
case MysqlType.FIELD_TYPE_STRING:
case MysqlType.FIELD_TYPE_DECIMAL:
case MysqlType.FIELD_TYPE_NEWDECIMAL:
case MysqlType.FIELD_TYPE_GEOMETRY:
case MysqlType.FIELD_TYPE_BIT:
case MysqlType.FIELD_TYPE_JSON:
case MysqlType.FIELD_TYPE_NULL:
return 0;
}
return -1; // unknown type
}