oracle ORA-01840:输入值对于日期格式不够长,请高手帮忙。有非法数据?怎么处理?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle ORA-01840:输入值对于日期格式不够长,请高手帮忙。有非法数据?怎么处理?相关的知识,希望对你有一定的参考价值。
oracle ORA-01840:输入值对于日期格式不够长,请高手帮忙。有非法数据?怎么处理?日期型数据内有不规范数据造成的。找出那条记录,UPDATE日期字段。其具体的语法格式如下:
TRUNC(date,[fmt])
其中:
date 为必要参数,是输入的一个日期值
fmt 参数可忽略,是日期格式,用以指定的元素格式来截去输入的日期值。忽略它则由最近的日期截去
下面是该函数的使用情况:
trunc(sysdate,'yyyy') --返回当年第一天.
trunc(sysdate,'mm') --返回当月第一天.
trunc(sysdate,'d') --返回当前星期的第一天.说明 你要输入的日期过短 ,可能要求输入日期的格式是‘yyyy-mm-dd hh24:mi:ss'
你就要输入 20130101125959 日期就变成 2013年1月1日12点59分59秒
如果你要看自己输入的结果 输入:
select to_char(to_date($rundate,'yyyymmddhh24miss’),‘yyyy-mm-dd hh24:mi:ss') from dual 参考技术A 说明 你要输入的日期过短 ,可能要求输入日期的格式是‘yyyy-mm-dd hh24:mi:ss'
你就要输入 20130101125959 日期就变成 2013年1月1日12点59分59秒
如果你要看自己输入的结果 输入:
select to_char(to_date($rundate,'yyyymmddhh24miss’),‘yyyy-mm-dd hh24:mi:ss') from dual;
希望对你有帮助。本回答被提问者和网友采纳 参考技术B 正确语句
select to_date('2012-05-06 12:05:03','yyyy-mm-dd hh24:mi:ss') from dual
select to_date('2012-05-06','yyyy-mm-dd hh24:mi:ss') from dual
select to_date('2012-05-06','yyyy-mm-dd') from dual
报错语句
select to_date('2012-05-06 12:05:03','yyyy-mm-dd') from dual
自己想去吧 参考技术C 可能有几种原因
1、转换格式有问题;yyyy-mm-dd hh24:mi:ss或者yyyy-mm-dd hh:mi:ss
2、转换的字段里面有空值 参考技术D 把你要输入的日期发过来
以上是关于oracle ORA-01840:输入值对于日期格式不够长,请高手帮忙。有非法数据?怎么处理?的主要内容,如果未能解决你的问题,请参考以下文章
当另一个单元格的值发生变化时,一个单元格中的自动日期更新(通过公式计算)