【问题标题】:ORA-01858 and can not find whereORA-01858 找不到在哪里
【发布时间】:2020-08-04 09:23:58
【问题描述】:

我有一个安静的长 SQL 查询,对于某些客户,它会导致 ORA-01858 错误:

ORA-01858:在需要数字的地方发现了一个非数字字符 *原因:要使用日期格式模型转换的输入数据是 不正确。输入数据不包含数字 格式模型所要求的。 *行动:修复输入数据或日期格式模型,以确保 元素在数量和类型上匹配。然后重试操作。

我找不到发生错误的行。

有没有办法告诉我哪一行有问题? 此错误仅在使用 to_date 函数时出现还是可能是任何其他函数?

它是 Oracle SQL 服务器 12.1.0.2.0,我使用的是 Oracle SQL Developer 19.4.0.354

感谢您的帮助

【问题讨论】:

  • 没有看到 SQL 查询,我们无法评论任何内容。
  • 尝试在错误仍然发生时尽可能减少语句并将该语句张贴在这里。我们无法在我们不知道的语句中找到错误。根据目前的信息,我们可能只会给您一般性的建议,错误描述已经这样做了。

标签: sql oracle oracle-sqldeveloper


【解决方案1】:
  1. 出现此错误的原因不仅在于日期转换。
  2. 当我们尝试传递日期而预期为 varchar 时,可能会出现此错误 当我们尝试传递 varchar 而预期日期时。
  3. 在需要 varchar 时使用 to_char(sysdate,'YYYY-MM-DD')。

如果您需要更多了解,请随时更新,我们将为您创建一个示例。

【讨论】:

    猜你喜欢
    • 2015-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多