博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL的时间进位问题
阅读量:4569 次
发布时间:2019-06-08

本文共 736 字,大约阅读时间需要 2 分钟。

mysql更新到5.6.4 之后 , 新增了一个叫factional seconds的特性 , 可以记录时间的毫秒值.

但是目前的数据库是不记录毫秒值的 , 所以会产生一个java中时间的Milliseconds超过500就会四舍五入的问题.

例如一个时间是2015-08-31 23:59:59.520 , 毫秒值超过500 , 入库的时候 , 时间就会变成2015-09-01 00:00:00 . 下面的两条sql就可以看出效果.

 

insert into money_record values(null,1711929, 'jerry1bean', NULL, NULL, 20.00, 2.00, 1250, '2015-08-31 23:59:59.500000', NULL, NULL, NULL, 'just a test', NULL);

 

insert into money_record values(null,1711929, 'jerry1bean', NULL, NULL, 20.00, 2.00, 1250, '2015-08-31 23:59:59.499999', NULL, NULL, NULL, 'just a test', NULL);

   

表中就会出现明明是2015-08-31 : 23:59:59这样的tradeTime , 存入2015_08的表后tradeTime却变成9月1号的情况.

P.S 貌似java中的Date是无法显示毫秒的,但是对象里是保存毫秒时间的 , 得用calendar才能打印出来

转载于:https://www.cnblogs.com/taojintianxia/p/4736910.html

你可能感兴趣的文章
Sublimetext3安装Emmet插件步骤
查看>>
MySQL配置参数
查看>>
全面理解Java内存模型
查看>>
存储过程
查看>>
生成器
查看>>
将一个数的每一位都取出来的方法!
查看>>
2) 十分钟学会android--建立第一个APP,执行Android程序
查看>>
面试题8:二叉树下的一个节点
查看>>
hash冲突的解决方法
查看>>
Asp.Net webconfig中使用configSections的用法
查看>>
mysql 二进制日志
查看>>
阻止putty变成inactive
查看>>
TP框架代码学习 学习记录 3.2.3
查看>>
doc文档生成带目录的pdf文件方法
查看>>
js数组,在遍历中删除元素(用 for (var i in arr)是无效的 )
查看>>
通过前端上传图片等文件的方法
查看>>
在 OC 中调用 Swift 代码
查看>>
Android仿腾讯应用宝 应用市场,下载界面, 有了进展button
查看>>
安卓|五大逆向软件下载
查看>>
5 OK6410裸机调试(不用Jlink)
查看>>