MySQL中3种基本的列数据类型:数字、日期和时间、字符串。而每个类型中又包含的多个类型。下面我们就先来介绍这三种类型吧:
1.数字类型
数字类型分为整型和浮点型两类。对于浮点型数字来说,可以指定小数点后数字的位数;对于整型数据来说,也能把它们指定为无符号型。
对所有数字类型,可以指定ZEROFILL属性。当显示ZEROFILL字段中的值时,空余部分用0来补充。如国一个字段指定为ZEROFILL,它将自动成为UNSIGNEDH数据类型。
2.日期和时间类型
多种日期和时间类型被MySQL支持。使用这些类型,可以以字符串或数字格式输入数据。但是要注意,如果不手动设置,特定性中的TIMESTAMP列将被设置为最近修改该行的日期和时间。这对于事务记录是很有意义的。
3.字符串类型
字符串类型可分为三类:
第一是普通字符串,即小段文本,包括CHAR(固定长度字符)类型和VARCHAR(可变长度字符)类型。可以指定每种类型年过的宽度。无论数据大小是多少,CHAR类型的列都会用空格填补空白,但是VARCHAR列宽随数据大小变化。(请注意,获取CHAR类型数据的时候与存储VARCHAR数据的时候,MySQL将过滤多余空格。)
第二种是TEXT和BLOB类型,这些类型大小可变,它们分别适用于长文本或二进制数据。
第三种是SET和ENUM类型,SET类型是用来指定列中的值必须来自一个特定集合中的指定值。列值可以包含来自该集合的多个值。在指定的集合中,最大可以有64个元素。
ENUM就是枚举。与SET类型非常相似,但是该类型的列可以只有一个指定集合中的值或者NULL,在枚举中最大还可以有65535个元素。