MySQL如何存储时间datetime还是timestamp


MySQL如何存储时间datetime还是timestamp

文章插图
【MySQL如何存储时间datetime还是timestamp】 
时间存储时间存储是我们在MySQL中最常用的一种存储类型 , MySQL为我们提供了timestamp和datetime两种数据类型 , 那么这两者有什么区别 , 又该如何进行选择呢
timestamp和datetime的区别
  1. datetime的默认值为null , timestamp默认值为当前系统时间
  2. datetime占用8个字节 , timestamp占用4个字节
  3. datetime存的什么读出来就是什么 , timestamp存储的时候会转为utc存储 , 读出的时候也会转换成当前时区
  4. timestamp所能存储的时间范围为:'1970-01-01 00:00:01.000000' 到 '2038-01-19 03:14:07.999999' 。datetime所能存储的时间范围为:'1000-01-01 00:00:00.000000' 到 '9999-12-31 23:59:59.999999' 。
如何选择
  • 如果时间范围超过2038年 , 那自然选择datetime
  • 如果希望跨时区存储不同地区时间 , 也选择datetime
  • timestamp适合用于记录字段最后更新时间(老版本mysql , 新版本datetime也可以支持)




    推荐阅读