| MySQL | Oracle | SQLServer | PostgreSQL | SQLite | DB2 |
有符号32位整数 | INTEGER/INT | 见“高精度小数” | INT | INTEGER | INTEGER | INTEGER/INT |
无符号32位整数 | INT UNSIGNED | 无 | 无 | 无 | 无 | 无 |
有符号64位整数 | BIGINT | 见“高精度小数” | BIGINT | BIGINT | INTEGER | BIGINT |
无符号64位整数 | BIGINT UNSIGNED | 无 | 无 | 无 | 无 | 无 |
有符号16位整数 | SMALLINT | 见“高精度小数” | SMALINT | SMALINT | INTEGER | SMALINT |
无符号16位整数 | SMALLINT UNSIGNED | 无 | 无 | 无 | 无 | 无 |
有符号8位整数 | TINYINT | 见“高精度小数” | 无 | 无 | INTEGER | 无 |
无符号8位整数 | TINYINT UNSIGNED | 无 | TINYINT | 无 | 无 | 无 |
高精度小数 | DECIMAL(precision, scale) precision范围1至65,scale范围0至30(不大于precision) | NUMBER(precision, scale) precision范围1至38,scale范围-84至127 | DECIMAL(precision, scale) precision范围1至38,scale范围0至precision | NUMERIC(precision, scale) precision范围1至1000,scale范围0至precision | NUMERIC | DECIMAL(precision, scale) precision范围1至31,scale范围0至precision |
32位浮点数 | FLOAT | BINARY_FLOAT | REAL | REAL | 无 | REAL |
64位浮点数 | DOUBLE | BINARY_DOUBLE | DOUBLE PRECISION | DOUBLE PRECISION | REAL | DOUBLE |
布尔值 | 无 | 无 | 无 | BOOLEAN | 无 | 无 |
定长字符串 | CHAR(size) size最多255 | CHAR(size) 最多2000字节/字符 | CHAR(size) size最多8000 | CHAR(size) | 见“长字符串” | CHAR(size) 最多255字节 |
Unicode | 见“定长字符串” | NCHAR 最多2000字节 | NCHAR(size) size最多4000 | 见“定长字符串” | 见“长字符串” | 见“定长字符串” |
变长字符串 | VARCHAR(size) size最多65535 | VARCHAR2(size) 最多4000字节/字符 | VARCHAR(size) size最多8000 | VARCHAR(size) | 见“长字符串” | VARCHAR(size) 最多32704字节 |
Unicode | 见“变长字符串” | NVARCHAR2(size) 最多4000字节 | NVARCHAR(size) size最多4000 | 见“变长字符串” | 见“长字符串” | 见“变长字符串” |
时间戳 | TIMESTAMP(fractional_seconds) 范围:'1970-01-01 00:00:01.000000'至 '2038-01-19 03:14:07.999999' | TIMESTAMP(fractional_seconds) 范围:'-4712-01-01'至'9999-12-31' | 见“日期时间” | TIMESTAMP(fractional_seconds) 范围:4713 BC至294276 AD,最大精度1ms | 无 | TIMESTAMP 范围:0001-01-01 00:00:00.000000000至9999-12-31 24:00:00.000000000 |
日期时间 | DATETIME(fractional_seconds) 范围:'1000-01-01 00:00:00.000000'至'9999-12-31 23:59:59.999999' | DATE 范围:'-4712-01-01'至'9999-12-31' | DATETIME 范围:1753-01-01 00:00:00至9999-12-31 23:59:59.997 DATETIME2(fractional_seconds) 范围:0001-01-01 00:00:00至9999-12-31 23:59:59.9999999 | 见“时间戳” | 无 | 见“时间戳” |
日期 | DATE 范围:'1000-01-01'至'9999-12-31' | 见“日期时间” | DATE 范围:0001-01-01至9999-12-31 | DATE 范围:4713 BC至5874897 AD | 无 | DATE 范围:0001-01-01至9999-12-31 |
时间 | TIME(fractional_seconds) 范围:'-838:59:59.000000' to '838:59:59.999999' | 无 | TIME(fractional_seconds) 范围:00:00:00.0000000至23:59:59.9999999 | TIME(fractional_seconds) 范围:00:00:00至24:00:00,最大精度1ms | 无 | TIME 范围:00:00:00至24:00:00 |
长字符串 | TEXT 最多65533字节 MEDIUMTEXT 最多16MB - 3字节 LONGTEXT 最多约4GB - 4字节 | CLOB | TEXT | TEXT | TEXT | CLOB |
Unicode | 见“长字符串” | NCLOB | NTEXT | 见“长字符串” | 见“长字符串” | 见“长字符串” |
二进制 | BLOB 最多65533字节 MEDIUMTEXT 最多约16MB - 3字节 LONGBLOB 最多约4GB - 4字节 | BLOB | VARBINARY | BYTEA | BLOB | BLOB |
JSON | JSON | 无 | 无 | JSON | 无 | 无 |