MySQL Workbench 手册  /  ...  /  PostgreSQL 类型映射

10.6.4 PostgreSQL 类型映射

下表显示了 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