MySQL 数据类型 大全



其中的长度以字节为单位
 名称 
 
长度 
 
 
 
 
用法 
 
TINYINT(M) 
 
BIT,BOOL,BOOLEAN 
 
1 
 
如果为无符号数,可以存储从0到255的数; 
 
否则可以存储从-128到127的数。 
 
SMALLINT(M) 
 
2 
 
如果为无符号数,可以存储从0到65535的数; 
 
否则可以存储从-32768到32767的数。 
 
MEDIUMINT(M) 
 
3 
 
如果为无符号数,可以存储从0到16777215的数;否则可以存储从-8388608到8388607的数 
 
INT(M) 
 
INTEGER(M) 
 
4 
 
如果为无符号数,可以存储从0到4294967295的数,否则可以存储从-2147483648到2147483647的数。 
 
BIGINT(M) 
 
8 
 
如果为无符号数,可以存储从0到18446744073709551615的数,否则可以存储从-9223372036854775808到9223372036854775807的数。 
 
FLOAT(precision) 
 
4或8 
 
这里的precision是可以直达53的整数。如果precision<=24则转换为FLOAT,如果precision>24并且precision<=53则转换为DOUBLE。 
 
FLOAT(M,D) 
 
4 
 
单精度浮点数。 
 
DOUBLE(M,D), 
 
DOUBLE PRECISION, 
 
REAL 
 
 
 
 
8 
 
双精度浮点。 
 
DECIMAL(M,D), 
 
DEC,NUMERIC,FIXED 
 
M+1或M+2 
 
未打包的浮点数。 
 
DATE 
 
3 
 
以YYYY-MM-DD的格式显示。 
 
DATETIME 
 
HH:MM:SS 
 
8 
 
以YYYY-MM-DD的格式显示。 
 
TIMESTAMP 
 
4 
 
以YYYY-MM-DD的格式显示。 
 
TIME 
 
3 
 
以HH:MM:SS的格式显示。 
 
YEAR 
 
1 
 
以YYYY的格式显示。 
 
CHAR(M) 
 
M 
 
定长字符串。 
 
VARCHAR(M) 
 
最大M 
 
变长字符串。M<=255. 
 
TINYBLOB, 
 
TINYTEXT 
 
最大255 
 
TINYBLOB为大小写敏感,而TINYTEXT不是大小写敏感的。 
 
BLOB, 
 
TEXT 
 
最大64K 
 
BLOB为大小敏感的,而TEXT不是大小写敏感的。 
 
MEDIUMBLOB, 
 
MEDIUMTEXT 
 
最大16M 
 
MEDIUMBLOB为大小写敏感的,而MEDIUMTEXT不是大小敏感的。 
 
LONGBLOB, 
 
LONGTEXT 
 
最大4G 
 
LONGBLOB为大小敏感的,而LONGTEXT不是大小敏感的。 
 
ENUM(VALUE1,….) 
 
1或2 
 
最大可达65535个不同的值。 
 
SET(VALUE1,….) 
 
可达8 
 
最大可达64个不同的值。