Ratio: 4 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio desactivado
 
Oracle

ORA-01002: invalid number

 

Causa: El número especificado no es válido.

 

Acción: Especificar un número válido.

 

La conversión implícita no funciona correctamente.

 

En este ejemplo podemos ver por que se produce el error ORA-01722

 


SQL> select count(*)
from articulos
where almacen = 1
and codigo = '255GH09'
and id = 12345
and trim(provincia) = 'Madrid';
*
ERROR at line 5:
ORA-01722: invalid number


Siendo la columna "id" un VARCHAR2(20), si colocas el número entre comillas simples y utilizas una conversión a carácter usando la función TO_CHAR(12345) solucionaras el error.

 

Ejemplos 

 


SQL> select count(*)
from <table_name>
where almacen = 1
and codigo = '255GH09'
and id = '12345'
and trim(provincia) = 'Madrid';


 


SQL> select count(*)
from <table_name>
where almacen = 1
and codigo = '255GH09'
and id = TO_CHAR(12345)
and trim(provincia) = 'Madrid';