mysql datetime、time、timestamp类型或存储到毫秒微秒时间该怎么办

mysql版本: 5.7
在这里插入图片描述

思路1:采用 datetime time timestamp格式字段来实现

mysql datetime类型的 设计表问题。

mysql里面的datetime类型的精确度是可以到1/ 10 ^ 6 秒的
某些客户端(如navicat for mysql)的显示经常只能看到精确到秒,其实是设计表的时候的配置问题。

如图,简单易懂。

在这里插入图片描述

在”设计表"中,小数点这一列只能为0,就算填上别的数值,保存时候也会被改为0.可见只能为0.
长度这一栏,最大为6.
最小为0.
就是显示时间的时候的秒后面的小数点后的位数。


代码示例:
在这里插入图片描述

如下图,是我使用java新增的值:
在这里插入图片描述

在这里插入图片描述

java插入的代码(mybatis方式,当然也可以使用其他方式,略):

  Date curDate = new Date();
  curDate.setTime(1583805994984L);

   Date curDate2 = new Date();
   curDate.setTime(1583805994444L);
   User user = new User(1L, "刘大炮", "123", "name", 11, 1, curDate, curDate, curDate2);
   int insert = sqlSession.insert(statement, user);

思路2:采用 long 字段来实实现

就当成一个普通的long类型来存储,想存秒级时间戳就存秒级时间戳;想存毫秒级时间戳就存毫秒级时间戳。
具体太简单,略。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值