1.上节我们讨论到text和varchar的真正区别,今天我们来一起揭晓。
text不能设置最大长度,最大固定位65535个字符,只占用10个表的字节宽度,不能指定默认值。
varchar可以指定最大长度,不能超过65535个字符,按指定字符长度计算的字节长度占用表的字节宽度,可以有默认值。
通常建议,varchar类型最常使用255个字符长度,超过255个字符长度就使用text类型。
此外,text类型存储方式特殊,通常将text类型字段拆分到另一张表中,以免影响索引速度。
2.MySQL之日期:
datetime:日期时间
date:日期
time:时间
timestamp:时间戳
datetime和timestamp异同点:
同:可以显示设置自动更新
异:datetime:不能设置隐式自动更新
timestamp:可以设置隐式自动更新
显式设置测试:
drop table if exists tb2;
create table tb2(
a int,
b datetime default current_timestamp on update current_timestamp,
c timestamp default current_timestamp on update current_timestamp);
insert into tb2(a) values(1);
select * from tb2;
)