0%

TIMESTAMP和DATETIME的区别

对MySQL中timestamp和datetime两个字段做了一些总结。

TIMESTAMP

  • 格式:YYYY-MM-DD HH:MM:SS

  • 范围:1970-01-01 00:00:01 UTC 到 2038-01-19 03:14:07 UTC

  • 存储:4字节

  • 可以设置default current_timestamp 默认获取当前时间进行存储,设置on update current_timestamp 自动维护更新时间。

  • 将服务器时间转化成UTC来存储,返回的时间会随着数据库的时区不同而发生改变。

DATETIME

  • 格式:YYYY-MM-DD HH:MM:SS
  • 范围:1000-01-01 00:00:00 到 9999-12-31 23:59:59
  • 存储:8字节
  • 存储服务器当前的时区,返回的时间与时区无关