mysql定义字段的时候,有许多类型可以选择,这么多类型,他们都代表什么意思呢?我也不知道,只能往下看看
数值类型
TINYINT
SMALLINT
MEDIUMINT
INT或INTEGER
BIGINT
FLOAT
DOUBLE
DECIMAL
用法介绍
定义一个age(年龄)字段
首先,人类的年龄很少或者说没有超过127岁的,因此我们应该选用TINYINT类型,占用的大小也比较小,其次,我们还要选择无符号类型的,因为年龄是没有负数的,所以可以这么写
age TINYINT UNSIGNED;
字符串类型
CHAR
VARCHAR
TINYBLOB
TINYTEXT
BLOB
TEXT
MEDIUMBLOB
TINYTEXT
LONGBLOB
LONGTEXT
CHAR(10) 和 VARCHAR(10) 的区别
最大只能存10个字符,超出就会报错
其中CHAR(10),即使存了1个字符,也会占用10个字符的空间,未占用空间,其他空间会使用空格进行补位
VARCHAR会根据存储的字符串计算占用的空间
CHAR会比VARCHAR性能高,因为VARCHAR需要计算