1.timestamp存储和时区相关,即会根据时区做转换
如:+8时区存进去, 而在+9时区取出,则时间为+9时区的时间
而datetime存储和时区不相关,不会做转换
如:+8时区存进去,在+9时区取出时,仍为+8时区的时间
2.占用空间不一样,前者4字节,后者8字节
例子:
create table t_timezone ( ts timestamp, dt datetime);
show variables like '%time_zone%';
system_time_zone cst(China Standard Time)
time_zone +08:00
insert into t_timezone(now(),now());
select * from t_timezone;
ts dt
2018-11-08 10:11:30 2018-11-08 10:11:30
set time_zone='+9:00';
select * from t_timezone;
ts dt
2018-11-08 10:11:30 2018-11-08 11:11:30
本文探讨了timestamp和datetime在存储方式与时区处理上的不同。timestamp存储受时区影响,存储和检索时会根据当前时区进行转换;而datetime存储不受时区影响。此外,timestamp占用4字节,datetime则占用8字节。
1141

被折叠的 条评论
为什么被折叠?



