现在的位置: 首页 > 综合 > 正文

ORA-01810 格式代码出现两次,日期格式,时间格式,to_date错误

2013年09月22日 ⁄ 综合 ⁄ 共 590字 ⁄ 字号 评论关闭

错误代码

 

DetachedCriteria detachedCriteria = DetachedCriteria
  .forClass(FinanceInvoice.class);
  detachedCriteria.add(Restrictions.sqlRestriction(" to_date(filldate, 'yyyy-MM-dd hh:mm:ss') > sysdate "));

 

以为oracle和java里面差不多,java里面只要区分大小写就行了 不过oracle不行

 

 

mm改成mi即可

 

DetachedCriteria detachedCriteria = DetachedCriteria
  .forClass(FinanceInvoice.class);
  detachedCriteria.add(Restrictions.sqlRestriction(" to_date(filldate, 'yyyy-MM-dd hh:mi:ss') > sysdate "));

 

 

 

这个错误的原因是使用了两次MM

to_date('YYYY-MM-DD HH:MM:SS')

需要把分钟的MM改成MI

to_date('YYYY-MM-DD HH:MI:SS')

这样可能会出现小时变成了上下午的12小时格式,所以可以给小时设置成24小时格式

to_date('YYYY-MM-DD HH24:MI:SS')

抱歉!评论已关闭.