MySQL Workbench 发行说明
下表显示了 PostgreSQL(源)数据类型和 MySQL 数据类型之间的映射关系。
表 10.3 类型映射
| 源类型 | MySQL 类型 | 注释 |
|---|---|---|
| INT | INT | |
| SMALLINT | SMALLINT | |
| BIGINT | BIGINT | |
| SERIAL | INT | 在其表定义中设置 AUTO_INCREMENT。 |
| SMALLSERIAL | SMALLINT | 在其表定义中设置 AUTO_INCREMENT。 |
| BIGSERIAL | BIGINT | 在其表定义中设置 AUTO_INCREMENT。 |
| BIT | BIT | |
| BOOLEAN | TINYINT(1) | |
| REAL | FLOAT | |
| DOUBLE PRECISION | DOUBLE | |
| NUMERIC | DECIMAL | |
| DECIMAL | DECIMAL | |
| MONEY | DECIMAL(19,2) | |
| CHAR | CHAR/LONGTEXT | 取决于其长度。MySQL Server 5.6 及更高版本可以具有长度最大为 255 个字符的 CHAR 列。任何更大的内容都将迁移为 LONGTEXT。 |
| NATIONAL CHARACTER | CHAR/LONGTEXT | 取决于其长度。MySQL Server 5.6 及更高版本可以具有长度最大为 65535 个字符的 VARCHAR 列。任何更大的内容都将迁移到其中一种 TEXT blob 类型。在 MySQL 中,字符串的字符集取决于列字符集而不是数据类型。 |
| VARCHAR | VARCHAR/MEDIUMTEXT/LONGTEXT | 取决于其长度。MySQL Server 5.6 及更高版本可以具有长度最大为 65535 个字符的 VARCHAR 列。任何更大的内容都将迁移到其中一种 TEXT blob 类型。 |
| NATIONAL CHARACTER VARYING | VARCHAR/MEDIUMTEXT/LONGTEXT | 取决于其长度。MySQL Server 5.6 及更高版本可以具有长度最大为 65535 个字符的 VARCHAR 列。任何更大的内容都将迁移到其中一种 TEXT blob 类型。在 MySQL 中,字符串的字符集取决于列字符集而不是数据类型。 |
| DATE | DATE | |
| TIME | TIME | |
| TIMESTAMP | DATETIME | |
| INTERVAL | TIME | |
| BYTEA | LONGBLOB | |
| TEXT | LONGTEXT | |
| CIDR | VARCHAR(43) | |
| INET | VARCHAR(43) | |
| MACADDR | VARCHAR(17) | |
| UUID | VARCHAR(36) | |
| XML | LONGTEXT | |
| JSON | LONGTEXT | |
| TSVECTOR | LONGTEXT | |
| TSQUERY | LONGTEXT | |
| ARRAY | LONGTEXT | |
| POINT | POINT | |
| LINE | LINESTRING | 虽然 LINE 长度是无限的,而 LINESTRING 在 MySQL 中是有限的,但它是近似的。 |
| LSEG | LINESTRING | LSEG 就像只有两个点的 LINESTRING。 |
| BOX | POLYGON | BOX 是具有五个点和直角的 POLYGON。 |
| PATH | LINESTRING | |
| POLYGON | POLYGON | |
| CIRCLE | POLYGON | 使用 POLYGON 来近似 CIRCLE。 |
| TXID_SNAPSHOT | VARCHAR |