各主流关系式数据库的数据类型对比

各主流关系式数据库的数据类型对比
0
数据类型 MySQL Oracle SQL Server 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’ 至 ‘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 字节
MEDIUMBLOB 最多约 16 MB - 3 字节
LONGBLOB 最多约 4 GB - 4 字节
BLOB VARBINARY BYTEA BLOB BLOB
JSON JSON JSON
2赞