数据类型 1. 整数: 若实际值超出对应类型范围,则会出现"Out of range"错误;整数类型通常会指定显示宽度,如int(5),不指定默认int(11), 若实际值不满改宽度则会自动前面补0(zerofill)。 2.浮点数: 3.定点数类型与位类型: 定点数在MySQL中以字符串的形式存储,比浮点数更精确,可用于表示货币等高精度数据。 浮点和定点数都可以(M,D)方式来表示,M表示显示M位数字(整数位+小数位),D位位于小数点后面,M和D又称为精度和标度。 定点数默认默认精度为(10, 0), 超过精度会报错;而浮点数则根据实际值来显示。 对于BIT(M)位类型,M取值为1~64,默认为1,表示存放的二进制位数,实际值超过范围,则插入失败。 4.日期时间类型(MySQL5.0): 对于TIMESTAMP, 表中第一个TIMESTAMP类型的字段的默认值为CURRENT_TIMESSTAMP, 且一张表中仅有一个字段默认值可以为CURRENT_TIMESSTAMP。 TIMESTAMP会与时区相关,存取都会经过本地时区转换,所以不同时区看到的日期时间会不同。 存储时期时间时,对应的转换规则为: 5.字符串类型(MySQL5.0) 1.CHAR与VARCHAR CHAR长度不可变,范围为0~255, VARCHAR长度可变, 范围为0-65535; 检索数据时,CHAR去除尾部的空格,VARCHAR保留尾部的空格。 2.BINARY与VARBINARY 类似CHAR与VARCHAR, 但BINARY存储二进制字符串,当插入数据不足指定长度时,右边填充'/0'。 3.ENUM ENUM类型的字段,其值范围在创建表时指定,1~255个成员存储1个字节,255~65535个成员存储2个字节,如: 4.SET 与ENUM类型,其成员数为1~64,但其插入数据时,可以一次选多个值,有点checkbox的味道。 其他数据类型可以细查MySQL官方文档: http://dev.mysql.com/doc/refman/5.7/en/data-types.html 不吝指正。