您当前的位置: 首页 >  Java

qq_34412985

暂无认证

  • 0浏览

    0关注

    1061博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

oracle数据库数据存入问题 java.sql.SQLException:ORA-01861:文字和格式字符串不匹配、数字类型填入了非数字类型

qq_34412985 发布时间:2020-06-29 16:43:50 ,浏览量:0

后台存入记录进入数据库,数据类型报错往往是日期类型出错。今天说说面对日期类型在不同数据表中的不同设置,我们该如何针对数据库参数类型的传参呢? 问题描述:

在系统的多人合作中,有的同事把表日期类型设置为 varchar2类型,有的同事把表日期类型设置为Date类型,存入日期咋传? 解决方法:

首先我们基本都是从前端的插件中选择时间传入后台取参数时,该参数类型为一个字符串类型。

1.当数据表的日期设置为varchar2类型,在java中我们通过SimpleDateFormat 进行规范化参数后直接参数传入进行比对就好了,如果数据表中为date类型,传入字符串类型就会报 ORA-01861:文字和格式字符串不匹配

    String finishDate  = request.getParameter("finishDate")==null?"":request.getParameter("finishDate");                 SimpleDateFormat matter = new SimpleDateFormat("yyyy-MM-dd");                 Calendar calendar = Calendar.getInstance();                 if ("".equals(finishDate) || finishDate== null) {                     finishDate= matter.format(calendar.getTime());                 }

 通常是一个起始时间和结束时间查询时间段期间的所有记录

    if(recordDate!=null && !"".equals(recordDate.trim())){                     sql.append("  and productiondate >= '").append(recordDate.trim()).append("' ");                 }                 if(finishDate!=null && !"".equals(finishDate.trim())){                     sql.append("  and productiondate

关注
打赏
1653291990
查看更多评论
立即登录/注册

微信扫码登录

1.6258s