问题标签 [ora-01858]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2796 浏览

oracle - 如何解决 SQL 错误:oracle 11g 中的 ORA-01858

我正在尝试使用现有的 DDL 文件创建一个表,该语句非常像这样

我得到的错误是

我已经搜索了谷歌,但无法得到正确的解决方案。请在这里给我建议一个解决方案。

0 投票
1 回答
122 浏览

oracle - 将日期字符串转换为日期时出错

在我的项目中 my_table 中任何事件的时间都以数字格式存储。现在我必须将其转换为 oracle 日期时间格式。

下面是一个解释:

示例 1:
•Sched_Arr_Tm = 0450,将等于凌晨 04:30(前 2 个是 HH(24 小时制。由于 04 < 12,因此只需将该数字用作小时)),接下来的 2 个是小时的小数(0.50 * 60 分钟 = 30 分钟)

•Sched_Arr_Tm = 2100,将等于晚上 9:00(因为 21> 12,然后取 21-12=9)

•Sched_Arr_Tm = 1475,将等于 02:45 Pm(前 2 个是 HH(24 小时制。因为 14 > 12。然后取 14-12=2),然后使用该数字作为小时))和下一个 2是一小时的小数(0.75 * 60 分钟 = 45 分钟)

•Sched_Arr_Tm = 0075,将等于上午 12:45(因为小时 = 00,那么小时 = 12),接下来的 2 是小时的小数(0.75 * 60 分钟 = 45 分钟)

我可以根据上述登录提取数据,但在将其转换为日期时出错。

来自 MY_TABLE;

我收到此错误:

ORA-01858: 在需要数字的地方发现了一个非数字字符。

0 投票
2 回答
1192 浏览

oracle - 将 Date 列与 sysdate 进行比较:在需要数字的地方发现了一个非数字字符

我遇到了一个奇怪的问题,将日期列与 SYSDATE 进行比较会产生以下错误:

我正在重新创建一个物化视图;其中包括一些小的更改,并且每当进程中止时,它总是指向以下派生表查询中的“>=”:

现在 end_date 是一个 DATE 类型,我实际上可以自己执行这个查询,但是每当我尝试在物化视图中运行它时,它总是会因上述错误而中止。尽管上周我能够使用相同的查询创建它。

有任何想法吗?

谢谢,

0 投票
2 回答
589 浏览

sql - oracle sql查询报错

以下查询给出错误:

我在两个系统上试过这个:

  1. 使用 NLS_DATE_FORMAT='DD-MON-RR' - 此查询工作正常。

  2. 使用 NLS_DATE_FORMAT='MM-DD-YYYY' - 给我错误ORA-01858: a non-numeric character was found where a numeric was expected

关于此查询为何失败的任何线索?我不能让查询依赖于 DATE 格式。

0 投票
1 回答
4128 浏览

oracle - ORA-01858 使用 to_date 函数将字符串转换为日期时出错

我正在尝试使用 PL/SQL 中的以下代码将字符串转换为日期:

错误发生为

ORA-01858: 在第 29 行预期为数字的地方发现了一个非数字字符

其中包括打开游标进行查询。我已经检查了 NSL 参数并在 to_Date 函数中将日期设置为此处的格式,在互联网上进行了搜索,但我无法弄清楚。请帮忙。

0 投票
1 回答
666 浏览

sql - ORA-01858: 在需要数字的地方发现了一个非数字字符

正在创建第一行和第三行,但第二行没有说,

ORA-01858: 在需要数字的地方发现了一个非数字字符

0 投票
1 回答
253 浏览

sql - oracle 日期格式比较 ORA-01858

我有这个关于生产的查询,直到昨天还没有问题:

但现在我收到一个错误

ORA-01858: 在需要数字的地方发现了一个非数字字符

EXAM_START_TIME 和 EXAM_END_TIME 列的类型为 NVARCHAR2(100),并存储类似 '16:40' 的数据;EXAM_DATE 是日期

0 投票
1 回答
222 浏览

sql - ORA-01858: 在简单的选择查询中需要数字的地方发现了一个非数字字符

ORA-01858: 在需要数字的地方发现了一个非数字字符

  1. 00000 - “在需要数字的地方发现了一个非数字字符”

*原因:使用日期格式模型转换的输入数据不正确。输入数据不包含格式模型需要数字的数字。

*操作:修复输入数据或日期格式模型,以确保元素在数量和类型上匹配。然后重试该操作。

我明白为什么会出现这个错误,但是为什么在我做一个简单的 select * 查询时它会出现?

我的查询就这么简单,

其他观察结果是,查询在 java 应用程序中运行良好。Java 应用程序和我的 Oracle 客户端都使用相同的 JDBC 字符串、用户名和密码。

可能是什么?在此先感谢您的任何建议。

0 投票
1 回答
135 浏览

sql - 如果日期不是日期格式,则返回 null

我有几千行查询可以正常工作很长时间,并且在某个时候开始返回:

我 99% 确定它是错误插入的日期。

我的问题是,如果日期格式不正确,是否有一个函数会返回日期或 NULL?