类型名称 | 说明 | 存储需求 |
TINYINT | 很小的正数 | 1个字节 |
SMALLINT | 小正数 | 2个字节 |
MEDIUMINT | 中等大小的正数 | 3个字节 |
INT(INTEGER) | 普通大小的正数 | 4个字节 |
BIGINT | 大正数 | 8个字节 |
可以在定义表结构时指定数据类型所需要的显示宽度,如果不指定,则系统为每一种类型指定默认的显示宽度。系统指定的默认显示宽度能够保证显示每一种数据类型可以取到取值范围内所有的值。
类型名称 | 说明 | 存储需求 |
FLOAT(M,N) M表示总共位数,N表示小数位数 | 单精度浮点数 | 4个字节 |
DOUBLE(M,N) | 双精度浮点数 | 8个字节 |
DECIMAL(M,D), DEC | 压缩的“严格”定点数 | M+2个字节 |
DECIMAL的存储空间并不是固定的,而是由精度值M决定,占用M+2个字节。
不论是定点还是浮点类型,如果用户指定的精度超出精度范围,则会四舍五入进行处理,FLOAT和DOUBLE在四舍五入时,不会发出警告,而DECIMAL数值会给出数值被截断的警告。
在MySql中,定点数DECIMAL是以字符串的形式存储的,在对精度要求比较高的时候(如货币,科学数据等),使用DECIMAL类型比较好。