问题标签 [ora-01722]

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 投票
1 回答
406 浏览

sql - 如何在plsql中将字符串数据类型传递给数字数据类型

我有这样的程序...

从返回的值select value into v_psg from settings_am where key = 'PSG';将是

'1','2','3'

当我运行这个程序时,我返回了 ora 错误 - ORA-01403。

请告知我应该如何将 v_psg 值传递给产品表的 psg 列?

编辑 - 尝试使用建议的测试用例

0 投票
3 回答
59 浏览

sql - 无法将值插入表(Oracle)

当我尝试将值插入表中时,我不断收到错误报告 - ORA-01722: invalid number。

我正在使用甲骨文。最初的问题是表存储的主键是表员工的外键,反之亦然,因此我无法插入任何值。所以我将表存储中的外键更改为 NULL 并尝试了但仍然没有用

0 投票
0 回答
400 浏览

sql - 什么会导致 ORA-01722:列类型为 NUMBER 时出现无效数字错误

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production 0 PL/SQL Release 12.1.0.2.0 - Production 0 CORE 12.1.0.2.0 Production 0 TNS for Linux:版本 12.1.0.2.0 - Production 0 NLSRTL 版本12.1.0.2.0 - 生产 0

我有一个名为 tkd_gl1 的复杂视图

--所有这些都返回 ORA-01722

0 投票
1 回答
216 浏览

oracle - 错误 ORA-01722:创建实体化视图时编号无效(Oracle SDE 问题?)

我想从涉及空间表(基于 SDE)和 oracle 非空间表的查询中创建一个物化视图。只执行查询,工作,但只要我想创建一个物化视图(或表),就会出现错误“ORA-01722:无效号码”。

我尝试了不同的转换方法,如 to_number()、cast(x as numeric(x,x))、cast(as number(x,x))、cast(x as int),在的两侧,>=也只有在左侧。原因是左侧 ( TEST_IND_TABLE_BASIS.IND_VALUE) 的>=类型为 varchar2。这是由数据模型给出的。

下面的简化示例有效。我的假设是 SDE 引起了麻烦?你能在我的代码中发现另一个可能的问题吗?

这是我的问题的简化(工作)版本。在原始代码中,表TEST_IND_TABLE_BASIS是一个空间 (SDE) 表。

0 投票
3 回答
6505 浏览

sql - ORA-01722- 无效号码

我在包抛出错误中有一个查询

ORA-01722 : 无效号码。

我尝试了很多方法,但没有运气。

  • c.acct_nmbrNUMBER(19,0)
  • h.v_acct_numvarchar2(4000 byte)

请建议我解决方案

0 投票
1 回答
544 浏览

sql - ORA-01722: 无效数字,但删除 DECODE 语句会返回结果

我有一个 SQL 查询(如下),我得到一个 ORA-01722: invalid number 错误。很常见。

一旦我删除 DECODE 语句并且只有 PARAMTYPE 列,我就会得到结果。1 列带有 PARAM_NAME(DISPLAYNAME 列),另一列带有 PARAM_VAL(PARAMTYPE 列)。DECODE 中的所有数据类型都是 Varchar,因此没有从 number 到 char 的转换,反之亦然。这通常是出现此无效数字错误的最常见原因。

如果从上面不清楚,我想做的是在 PARAMTYPE 列上插入一些 if/then 逻辑来更新它。我正在考虑对 PARAMTYPE 变量使用 CASE 语句,但我不确定最好的方法是什么。

0 投票
2 回答
211 浏览

sql - 使用两个子查询的结果更改 Oracle 序列

我正在尝试使用两个子查询的结果来更改序列。我是 Oracle 的新手,并且坚持使用语法。如果可以的话,请帮我解决这个问题:

执行此操作后,我收到“无效号码”错误。我在这里想念什么?

0 投票
1 回答
131 浏览

oracle - ORA-01722: 仅在从视图中选择 * 时无效数字,而不是直接针对视图

我得到 ORA-01722: invalid number 但只有当我select * from theView而不是当我直接选择 theView 时(使用视图中的 SQL CREATE OR REPLACE...)。

(我之前遇到并理解过这个错误,以及针对 NULL 值运行聚合,不应将 VARCHARS 存储在 NUMBER 列等中,但我很难理解这个问题)

0 投票
1 回答
103 浏览

sql - ora-01722 在两个视图的减号运算符上使用 count(1) 的无效数字

我有一个错误 ora-01722:无效号码。尝试了to_char,强制转换函数,没有任何帮助。我有以下 SQL,其中 PERSON_DOCS 和 PERSON_DOCS_NEW 是视图,字段 DOCTYPENAME 是使用视图内的子选择计算的,类型为 varchar2(70),并且对于两个视图中的所有行都为空。

目前的观点是相同的:

尝试了 to_char,在视图内的子选择上强制转换函数,没有帮助。

Table3 DDL语句,取值来自: