相同点
都可以用于存储日期时间。
不同点
- datetime原样存储;timestamp会把客户端插入的时间从当前时区转化为UTC(世界标准时间)进行存储,查询时,将其又转化为客户端当前时区进行返回。timestamp可以很容易在不同时区转换。
- MySQL 5.6.4之前,datetime存储空间占用8字节,timestamp存储空间占用4字节。
- datetime存储日期时间范围为’1000-01-01 00:00:00.000000’ 到 ‘9999-12-31 23:59:59.999999’;timestamp存储日期时间范围为’1970-01-01 00:00:01.000000’ 到 ‘2038-01-19 03:14:07.999999’。
总结
对于日期时间范围有要求,建议选择datetime。