MySQL 8.3 Release Notes
为了便于使用其他供应商的 SQL 实现编写的代码,MySQL 将数据类型映射如下表所示。这些映射使得从其他数据库系统导入表定义到 MySQL 变得更容易。
Other Vendor Type | MySQL Type |
---|---|
BOOL |
TINYINT |
BOOLEAN |
TINYINT |
CHARACTER VARYING( |
VARCHAR( |
FIXED |
DECIMAL |
FLOAT4 |
FLOAT |
FLOAT8 |
DOUBLE |
INT1 |
TINYINT |
INT2 |
SMALLINT |
INT3 |
MEDIUMINT |
INT4 |
INT |
INT8 |
BIGINT |
LONG VARBINARY |
MEDIUMBLOB |
LONG VARCHAR |
MEDIUMTEXT |
LONG |
MEDIUMTEXT |
MIDDLEINT |
MEDIUMINT |
NUMERIC |
DECIMAL |
数据类型映射发生在表创建时,此后原始类型规范将被丢弃。如果您使用其他供应商的类型创建表,然后发出 DESCRIBE
语句,MySQL 将使用等效的 MySQL 类型报告表结构。例如:tbl_name
mysql> CREATE TABLE t (a BOOL, b FLOAT8, c LONG VARCHAR, d NUMERIC);
Query OK, 0 rows affected (0.00 sec)
mysql> DESCRIBE t;
+-------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------+------+-----+---------+-------+
| a | tinyint(1) | YES | | NULL | |
| b | double | YES | | NULL | |
| c | mediumtext | YES | | NULL | |
| d | decimal(10,0) | YES | | NULL | |
+-------+---------------+------+-----+---------+-------+
4 rows in set (0.01 sec)