• 在oracle中存入date类型数据遇到的问题及其解决方法(利用java.sql.date和Timestamp)


    转自:https://blog.csdn.net/ShadowerWArden/article/details/80652377

    1. 使用JDBC操作Oracle数据库时,使用java.sql.Date类型对应数据库的date类型,此时只能保存和读取日期部分,

      时间(时分秒)部分不能读取和保存;

      查询结果集可以直接获取Date类型的数据:java.sql.Date date=resultSet.getDate("dateTime");

      java.sql.Date类型的数据也可以直接保存到数据库或者与数据库中date类型的数据直接比较大小;

      字符串的日期,则用SQL语句的转换函数 to_date('2017-4-8','yyyy-mm-dd') 转换为date类型插入到数据库。

    2. 使用Hibernate操作Oracle数据库时,使用java.util.Date类型对应数据库的date类型,此时数据库可以保存和读取到时分秒;

      java.sql.Date 和java.util.Date 类型的数据都可以直接保存到数据库或者与数据库中date类型的数据直接比较大小,但从数

      据库读取的日期数据要用java.util.Date 进行保存,因为java.sql.Date 是java.util.Date 的子类。

    3. 如果想要在oracle中插入date类型的数据并且精确到时分秒,甚至是毫秒,这时候就要利用java.sql.date类型和TimeStamp类型来达到目的,具体代码如下:

    SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    String signTimet=df.format(new Date());
    java.util.Date ud = null;
    try {
    ud = df.parse(signTimet);
    } catch (ParseException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
    }
    java.sql.Timestamp signTime = new java.sql.Timestamp(ud.getTime());
    文章第3部分为解决方法,通过个人实践所得

    文章中1、2两个部分转载他人观点,网址:参考网址
    ---------------------
    作者:Jzen_
    来源:CSDN
    原文:https://blog.csdn.net/ShadowerWArden/article/details/80652377
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    Java里if...else语句
    Java里for循环和增强版循环;break语句:跳出循环;continue:跳转循环
    Java里while循环和do...while循环
    static 修饰符
    Java类变量(静态变量)
    Java实例变量
    Java局部变量
    Java访问实例变量和调用成员方法
    Java里import语句使用
    声明式服务调用
  • 原文地址:https://www.cnblogs.com/sharpest/p/11234285.html
Copyright © 2020-2023  润新知