首先明确几个时间概念:
UTC时间 · GMT时间 · CST时间
-
UTC
协调世界时间,由原子钟报时,目前的主要世界时间标准。因为是原子钟,所以准确性不用多说。 -
GMT
格林威治标准时间,英国格林威治天文台的时间,现代科学发源时期定义的世界标准时间,现已被更准确的UTC取代,大多数情况下两者可等同。 -
CST
China Standard Time。中国标准时间,也就是北京时间,不用解释。
TIMESTAMP字段和DATETIME字段区别
首先明确时间概念后现在就可以很清晰的说明两者区别了。
1> 两者的存储方式不一样
对于TIMESTAMP,它把客户端插入的时间从当前时区转化为UTC时间进行存储。查询时,将其又转化为客户端当前时区进行返回。
而对于DATETIME,不做任何改变,基本上是原样输入和输出。
举个栗子,我们插入一条时间数据,timestamp和datetime字段显示结果一样,但是如果更改系统时区,datetime显示结果不变,而timestamp会变。
2> 两者所能存储的时间范围不一样
timestamp所能存储的时间范围为:'1970-01-01 00:00:01' 到 '2038-01-19 03:14:07'。
datetime所能存储的时间范围为:'1000-01-01 00:00:00' 到 '9999-12-31 23:59:59'。
datetime范围更大。
网友评论