zoukankan      html  css  js  c++  java
  • java中存储mysql数据库时间类型【date、time、datetime、timestamp】

    MySQL中对于时间的存储自己见表的时候都是设置的varchar类型的,感觉挺方便的。

    昨天拿别人建好的表写代码,发现这张表中时间类型为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
    来自CODE的代码片
    snippet_file_0.txt

    可以看到得到的结果还带有毫秒这个可以直接存储,到数据库里面就自动去掉毫秒了,另外在数据库中存入的不带毫秒的时间,在java中从数据库获取该时间后也是带有毫秒的,只是毫秒为为0。
  • 相关阅读:
    支付宝自研数据库OceanBase全球开放!淘汰甲骨文
    网易邮箱运维工程师岗位应聘笔试题
    Python中的10个常见安全漏洞及修复方法
    关于数据库性能优化的一些误区
    解密程序员招聘内幕
    JSP---第十次作业
    JSP----第九次作业
    JSP---第八次作业
    JSP---第七次作业
    第六次作业---JDBC连接数据库
  • 原文地址:https://www.cnblogs.com/heganlin/p/6074485.html
Copyright © 2011-2022 走看看