加载中…
个人资料
月儿
月儿
  • 博客等级:
  • 博客积分:0
  • 博客访问:3,316
  • 关注人气:41
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Oracle 异常 ORA-01861: literal does not match format string(字符串格式不匹配)

(2011-12-05 09:33:32)
标签:

ora-01861

杂谈

分类: 数据库

 如果直接按照字符串方式,或者,直接使用'2007-12-28 10:07:24',没有指定日期格式,就会报错:ORA-01861: 文字与格式字符串不匹配
必须指定日期格式

正确

 

select *
  from PRE_AWB_EMS preawbems0_
 where preawbems0_.AGNET_ID = 24261
   and to_date(preawbems0_.ARR_DATE, 'yyyy-mm-dd hh24:mi:ss') >=
       to_date('2011-12-05 00:00:00', 'yyyy-mm-dd hh24:mi:ss')
 order by preawbems0_.PRE_AWB_EMS_ID desc

原因:

字段arr_date是类型为varchar2,但是用的过程中把它当作一个日期类型date,所以直接使用sysdate,导致里面的结果为05-12月-11,所以查询的时候出现问题。

解决方法:把那一行去掉,新增时使用to_char(sysdate,'yyyy-MM-dd HH24:mi:ss')即可

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有