一、数值类型
1、整型
2、小数
3、位类型
二、字符类型
1、char和varchar类型
说明:用来保存MySQL中较短的字符串
2、binary和varbinary类型
说明:类似于char和varchar,不同的是它们包含二进制字符串
而不包含非二进制字符串
3、Enum类型
说明:又称为枚举类型
,要求插入的值必须属于列表中指定的值之一。
(1)如果列表成员为1~255,则需要1个字节存储
(2)如果列表成员为255~65535,则需要2个字节存储
(3)最多需要65535个成员!
4、Set类型
说明:和Enum类型类似,里面可以保存0~64个成员。
和Enum类型最大的区别是:SET类型一次可以选取多个成员
,而Enum只能选一个
根据成员个数不同,存储所占的字节也不同:
成员数 | 字节数 |
---|---|
1~8 | 1 |
9~16 | 2 |
17~24 | 3 |
25~32 | 4 |
33~64 | 8 |
三、日期类型
datetime和timestamp的区别:
(1)Timestamp支持的时间范围较小,取值范围:
19700101080001——2038年的某个时间
Datetime的取值范围:1000-1-1 ——9999—12-31
(2)timestamp和实际时区有关,更能反映实际的日期,而datetime则只能反映出插入时的当地时区
(3)timestamp的属性受Mysql版本和SQLMode的影响很大