java中存储mysql数据库时间类型【date、time、datetime、timestamp】
2016-11-17 16:57
651 查看
在MySQL中对于时间的存储自己见表的时候都是设置的varchar类型的,感觉挺方便的。
昨天拿别人建好的表写代码,发现这张表中时间类型为datetime的,凭感觉试了一下不行,网上查了刚开始试了好几个都是不对的,一脸懵逼。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
![](http://img.blog.csdn.net/20160922100910381?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
如图,mysql中的datetime类型数据对应的是Java中的Timestamp类。
date:只有日期,没有时间,2016-09-21;
time:只有时间,没有日期,23:42:31;
datetime:日期时间都有,2016-09-21 23:42:31 。
timestamp:可以在进行Insert或者update的时候自动的为你插入时间,时间格式:2016-09-21 23:42:31。
用navicat找了一张表添加了一个timestamp的字段,如下:
![](http://img.blog.csdn.net/20160922103448080?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
导出表结构看到该字段sql为:`time_test` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
言归正传,本次数据库中用的是datetime类型的,在java中生成可以存储的时间数据方法如下:
来自CODE的代码片
snippet_file_0.txt
可以看到得到的结果还带有毫秒这个可以直接存储,到数据库里面就自动去掉毫秒了,另外在数据库中存入的不带毫秒的时间,在java中从数据库获取该时间后也是带有毫秒的,只是毫秒为为0。
昨天拿别人建好的表写代码,发现这张表中时间类型为datetime的,凭感觉试了一下不行,网上查了刚开始试了好几个都是不对的,一脸懵逼。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如图,mysql中的datetime类型数据对应的是Java中的Timestamp类。
date:只有日期,没有时间,2016-09-21;
time:只有时间,没有日期,23:42:31;
datetime:日期时间都有,2016-09-21 23:42:31 。
timestamp:可以在进行Insert或者update的时候自动的为你插入时间,时间格式:2016-09-21 23:42:31。
用navicat找了一张表添加了一个timestamp的字段,如下:
导出表结构看到该字段sql为:`time_test` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
言归正传,本次数据库中用的是datetime类型的,在java中生成可以存储的时间数据方法如下:
1 2 3 4 | Date date = new Date(); Timestamp timeStamep = new Timestamp(date.getTime()); System.out.println(timeStamep); //输出结果: 2016-09-22 10:38:14.964 |
snippet_file_0.txt
可以看到得到的结果还带有毫秒这个可以直接存储,到数据库里面就自动去掉毫秒了,另外在数据库中存入的不带毫秒的时间,在java中从数据库获取该时间后也是带有毫秒的,只是毫秒为为0。
相关文章推荐
- java中存储mysql数据库时间类型【date、time、datetime、timestamp】
- java中存储mysql数据库时间类型【date、time、datetime、timestamp】
- java中存储mysql数据库时间类型【date、time、datetime、timestamp】
- MySQL数据库中的Date,DateTime,TimeStamp和Time类型
- Mysql日期时间类型(DATE,DATETIME,TIMESTAMP)和函数及与linux系统时间之间的转换(UNIX_TIMESTAMP、FROM_UNIXTIME)
- MySQL数据库中的Date,DateTime,TimeStamp和Time类型
- 关于datetime,date,timestamp,year,time时间类型小结
- MySQL数据库中的Date,DateTime,TimeStamp和Time类型
- mysql中的时间类型datetime,date,time,year,timestamp小知识点
- 【翻译】【MySQL】Mysql数据库中时间类型说明(Mybatis,Date,DateTime,Timestamp);
- java、MySQL时间类型的转换及存储(Timestamp、Date、String、Long)
- MySQL数据库中的Date,DateTime,TimeStamp和Time类型
- MySQL数据库中的Date,DateTime,TimeStamp和Time类型
- java、MySQL时间类型的转换及存储(Timestamp、Date、String、Long)
- mysql所支持的日期时间类型有:DATETIME、 TIMESTAMP、DATE、TIME、YEAR。
- MySQL里面的时间类型datetime,date,timestamp,time和year(转)
- java中几个时间的区别(java.sql.date,java.sql.time,java.sql.Timestamp)
- Mysql时间存储类型优缺点?DATETIME?TIMESTAMP?INT?
- AppFuse中日期时间(Date,Timestamp,Time)类型问题
- java获取获得Timestamp类型的当前系统时间。以及java.util.date 、java.sql.Date之间的转换