admin管理员组

文章数量:1794759

mysql int存储2038

mysql int存储2038

文章目录
      • 场景
      • 分析
      • 解决

场景
  • 项目中将账号的截至时间戳以int类型存储在mysql中, 测试同学在测试的时候 提出了一个bug 在2038-01-19之后日期会被截取成2038-01-19
分析
  • mysql int 有符号位 支持的最大长度是 2147483647; 而2038-01-19 11:14:07(北京时间) 已经达到了最大存储值, 所以之后的时间会被截取
解决
  • 更新类型 bigint, 我的项目账号数量不是特别大,所以可以这样做,也不特别占用空间
  • 存Ymd的形式

本文标签: mySQLint