奇怪的ORA-01858错误

时间:2011-11-01 12:02:11

标签: php oracle oci

查看我的php错误日志,我经常看到与特定存储过程相关的ORA-01858错误的条目。从我可以告诉搜索此错误代码,它始终是将错误输入传递给TO_CHAR()函数的结果。问题是,所讨论的存储过程只有一个TO_CHAR()函数,而我传递的值实际上是硬编码的。 (这是NVL()的第二个参数。这是代码:

ROUND(SYSDATE - NVL(PENDING_CLOSE_DT, TO_DATE('2000-01-01','YYYY-MM-DD')), 7) AS PENDING_DURATION

由于这是此过程中唯一使用TO_DATE()的原因,为什么我会收到ORA-01858错误?是否有其他情况我可以生成这样的错误?部分问题是这种情况有时只会发生。通常,使用此存储过程的程序运行正常,我知道这一点的唯一原因是检查错误日志。

1 个答案:

答案 0 :(得分:0)

因为你的to_date()行没有任何问题,你可能在某个地方有一个to_char()函数可能会出错吗?