数据类型越小越好,越简单越好,
整型比字符串好,ip可以转为整型,
整型比浮点型好,金额可以乘以一个倍数,转为整型
内置的日期和时间类型比char好,timestamp比datetime好
少用text类型
varchar(M)表示最长M个字符,M<=65535,每个值占用实际字节数+1或2字节用来记录长度
char(M)表示每个值都占用M个字符,不足M个字符,在右边补空格,检索时空格将被去掉,插入超过M个字符会报错,不会自动截断。最多255个字符
char速度快,浪费空间,适合存储短的字符串(因为varchar需要额外1字节来记录长度,用varchar存短字符串不划算),和固定长度的字符串,如uuid、hash值,以及经常改变的字符串(因为varchar需要计算长度),
(每句都待验证)
int(10)表示只展示10位,int(2)和int(10)占用的空间是相同的
`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
行被修改时会自动更新时间戳
BLOB是一个二进制对象,可以容纳可变数量的数据。TEXT是一个不区分大小写的BLOB。
BLOB和TEXT类型之间的唯一区别在于对BLOB值进行排序和比较时区分大小写,对TEXT值不区分大小写。