mysql字段类型

时间:2021-10-21 13:12:32

会安装mysql,会几条sql语句,会jdbc,会hibernate配置,以为就会mysql了,最近几天面试被问到mysql的问题,无地自容,系统的学习一下。

mysql优化之一,选择合适的而不是最大的数据类型。

整型

类型  占用字节 范围
TINYINT 1 2^8
SMALLINT 2 2^16
MEDIUMINT 3 2^24
INT 4 2^32
BIGINT 8 2^64

浮点型

类型 描述
FLOAT[(M,D)] M表示最大总位数,D表示小数点后最大位数
DOUBLE[(M,D)] 同上

日期类型

类型 范围
YEAR 1970~2069
TIME -8385959~8385959
DATE 1000-01-01~9999-12-31
DATETIME 1000-01-01 00:00:00~9999-12-31 23:59:59
DATESTAMP 1970-01-01 00:00:00~2037-12-31 23:59:59

字符型(省略枚举类型和集合)

类型 范围
CHAR(M) 定长,M个字符 0~255
VARCHAR(M) 变长,L+1个字符,L<=M,L<=M<=65535
TINYTEXT 最多存放2^8个字符
TEXT 最多存放L<2^16个字符
MEDIUMTEXT 最多存放L<2^24个字符
LONGTEXT 最多存放L<2^32个字符