Table_map_log_event column types: numerical identifier and metadata
阿新 • • 發佈:2019-02-05
資料搜尋很長時間,原來在程式碼裡,這裡備份下,以供不時之需
Name | Identifier | Size of metadata in bytes | Description of metadata |
---|---|---|---|
MYSQL_TYPE_DECIMAL | 0 | 0 | No column metadata. |
MYSQL_TYPE_TINY | 1 | 0 | No column metadata. |
MYSQL_TYPE_SHORT | 2 | 0 | No column metadata. |
MYSQL_TYPE_LONG | 3 | 0 | No column metadata. |
MYSQL_TYPE_FLOAT | 4 | 1 byte | 1 byte unsigned integer, representing the "pack_length", which is equal to sizeof(float) on the server from which the event originates. |
MYSQL_TYPE_DOUBLE | 5 | 1 byte | 1 byte unsigned integer, representing the "pack_length", which is equal to sizeof(double) on the server from which the event originates. |
MYSQL_TYPE_NULL | 6 | 0 | No column metadata. |
MYSQL_TYPE_TIMESTAMP | 7 | 0 | No column metadata. |
MYSQL_TYPE_LONGLONG | 8 | 0 | No column metadata. |
MYSQL_TYPE_INT24 | 9 | 0 | No column metadata. |
MYSQL_TYPE_DATE | 10 | 0 | No column metadata. |
MYSQL_TYPE_TIME | 11 | 0 | No column metadata. |
MYSQL_TYPE_DATETIME | 12 | 0 | No column metadata. |
MYSQL_TYPE_YEAR | 13 | 0 | No column metadata. |
MYSQL_TYPE_NEWDATE | 14 | – | This enumeration value is only used internally and cannot exist in a binlog. |
MYSQL_TYPE_VARCHAR | 15 | 2 bytes | 2 byte unsigned integer representing the maximum length of the string. |
MYSQL_TYPE_BIT | 16 | 2 bytes | A 1 byte unsigned int representing the length in bits of the bitfield (0 to 64), followed by a 1 byte unsigned int representing the number of bytes occupied by the bitfield. The number of bytes is either int((length+7)/8) or int(length/8). |
MYSQL_TYPE_NEWDECIMAL | 246 | 2 bytes | A 1 byte unsigned int representing the precision, followed by a 1 byte unsigned int representing the number of decimals. |
MYSQL_TYPE_ENUM | 247 | – | This enumeration value is only used internally and cannot exist in a binlog. |
MYSQL_TYPE_SET | 248 | – | This enumeration value is only used internally and cannot exist in a binlog. |
MYSQL_TYPE_TINY_BLOB | 249 | – | This enumeration value is only used internally and cannot exist in a binlog. |
MYSQL_TYPE_MEDIUM_BLOB | 250 | – | This enumeration value is only used internally and cannot exist in a binlog. |
MYSQL_TYPE_LONG_BLOB | 251 | – | This enumeration value is only used internally and cannot exist in a binlog. |
MYSQL_TYPE_BLOB | 252 | 1 byte | The pack length, i.e., the number of bytes needed to represent the length of the blob: 1, 2, 3, or 4. |
MYSQL_TYPE_VAR_STRING | 253 | 2 bytes | This is used to store both strings and enumeration values. The first byte is a enumeration value storing thereal type, which may be either MYSQL_TYPE_VAR_STRING or MYSQL_TYPE_ENUM. The second byte is a 1 byte unsigned integer representing the field size, i.e., the number of bytes needed to store the length of the string. |
MYSQL_TYPE_STRING | 254 | 2 bytes | The first byte is always MYSQL_TYPE_VAR_STRING (i.e., 253). The second byte is the field size, i.e., the number of bytes in the representation of size of the string: 3 or 4. |
MYSQL_TYPE_GEOMETRY | 255 | 1 byte | The pack length, i.e., the number of bytes needed to represent the length of the geometry: 1, 2, 3, or 4. |