ora-06502

Error: ora-06502: PL/SQL: numeric or value error string

Causa: An arithmetic, numeric, string, conversion, or constraint error occurred. For example, this error occurs if an attempt is made to assign the value NULL to a variable declared NOT NULL, or if an attempt is made to assign an integer larger than 99 to a variable declared NUMBER(2).

Acción: Change the data, how it is manipulated, or how it is declared so that values do not violate constraints.


Deja tu comentario:

¿No sabes cómo solucionar el error? ¿O lo has conseguido resolver y quieres ayudar a otros usuarios?

Para comentar, haz login con tu cuenta de


COMENTARIOS:

por GPC | 28/02/2006 19:59:46

RE: ORA-06502

Este Error es muy frecuente cuando en algun ciclo llevamos un contador y excedemos por error el limite de la variable contador declarado; lo que hay que hacer es declarar la variable contador de mayor capacidad y listo O Tambien ocurre en algunas conversiones de caracter a numero y la cadena que vamos a convertir contiene un caracter que no es un digito.

por Anónimo | 23/10/2006 18:53:27

RE: ORA-06502

COMO LO CACHO EN EL EXCEPTION?

por Anónimo | 13/01/2007 20:00:07

RE: ORA-06502

Para cachar un error de este tipo solo tienes que hacer es meter cualquier calculo de este tipo en un bloque BEGIN EXCEPTION END;

por Anónimo | 14/02/2007 18:07:03

RE: ORA-06502

Consulta, tengo una forma que me envía los datos a excel, sin embargo, existe solo un usuario al que le muestra este error PL/SQL: numeric or value error string, a los demás genera el archivo xls, sin prblemas, cuál podría ser el problema, espeor puedan ayudarme, gracias. Felix

por Anónimo | 09/04/2007 11:21:19

RE: ORA-06502

COMO SOLUCIONAR EL ERROR

por eduardo.edhellawaits666@gmail.com | 12/06/2007 17:19:09

RE: ORA-06502

a que se debe este error , (cambie frases por ser de una institucion privada) y como se puede solucionar, ademas que es lo que sgnifica este error
SQL execution error, ORA-06502: PL/SQL: Function returned without value
ORA-06512: at "sancrist.FC_OFERTA_GET" LINE 24
ORA-06512: AT LINE 1

por Anónimo | 05/09/2007 00:22:42

RE: ORA-06502

tengo una consulta tengo la siguiente funcion y al pasar la definicion del cursor me sale ese error esta es la funcion:
PROCEDURE CXP_P_EMPRESA(PV_CODIGOEMPRESA VARCHAR2,
PR_REGEMPRESA OUT EMPRESA\%ROWTYPE,
PV_MSGERROR IN OUT VARCHAR2) IS
/*
OBJETIVO:
Este procedimiento sirve para validar si el tipo de almacen existen o no.
Ademas retorna el registro completo de los tipos de transporte en caso de que existan
FECHA CREACION: 04-08-2007
USUARIO CREACION: ING. NATALI VALVERDE MEJIA
PARAMETROS:
Pv_CodigoEmpresa Ingresa: Codigo de la empresa a validar
Pr_RegEmpresa Retorna: Registro completo de la empresa si existe.
Pb_Existe Retorna:'TRUE' si existe, 'FALSE' si no.
Pv_MsgError Retorna: El mensaje de error si es que ocurriese alguno.

*/

CURSOR C_EMPRESA(CV_CODIGOEMPRESA VARCHAR2) IS
SELECT * FROM EMPRESA WHERE CODEMP = CV_CODIGOEMPRESA;

BEGIN
IF (C_EMPRESA\%ISOPEN) THEN
CLOSE C_EMPRESA;
END IF;

OPEN C_EMPRESA(PV_CODIGOEMPRESA);
FETCH C_EMPRESA
INTO PR_REGEMPRESA;
CLOSE C_EMPRESA;
EXCEPTION
WHEN OTHERS THEN
PV_MSGERROR := SQLERRM || ' | CXP_K_VALIDACION.cxp_p_empresa';
RETURN;
END CXP_P_EMPRESA;

por PABLO | 29/10/2007 21:24:48

RE: ORA-06502


a que se debe este error , (cambie frases por ser de una institucion privada) y como se puede solucionar, ademas que es lo que sgnifica este error
SQL execution error, ORA-06502: PL/SQL: Function returned without value
ORA-06512: at "sancrist.FC_OFERTA_GET" LINE 24
ORA-06512: AT LINE 1
MIREN QUE NO LES FALTE NINGUN JOIN.

por mduran | 22/11/2007 21:22:17

RE: ORA-06502

Buenas tardes,
Tengo este PL, en la cual llamo a un procedimiento de un package que como parametro pide un varchar2(8), y le estoy pasando un varchar2(8), sin embargo me da el error de numero o valor invalido:
DECLARE
--
/***************************************************************************************/
--
procedure p_valida_transaccion(p_cod_cia a5021600.cod_cia\%TYPE,
p_fec_asto date);
--
/***************************************************************************************/
--
l_cod_cia A5021600.cod_cia\%TYPE;
l_cod_cajero a5021600.cod_cajero\%TYPE;
l_fec_asto DATE;
--
/***************************************************************************************/
--
procedure p_valida_transaccion(p_cod_cia a5021600.cod_cia\%TYPE,
p_fec_asto date) is
--Cursor que obtiene los distintos cajeros que realizaron alguna transacción durante el día
CURSOR c_cajeros IS
SELECT distinct cod_cajero
FROM a5021600
WHERE cod_cia = l_cod_cia AND fec_asto = l_fec_asto
GROUP BY cod_cajero;
begin
l_cod_cia := p_cod_cia;
l_fec_asto := p_fec_asto;
--
FOR reg IN c_cajeros LOOP
--
l_cod_cajero := reg.cod_cajero;
--
--
gc_k_ap502067.p_graba_cierre(l_cod_cajero);
--
END LOOP;
/* EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('Error en proceso de decuadre');*/

end p_valida_transaccion;
Begin
p_valida_transaccion(1, to_date('11092006', 'ddmmyyyy'));
--p_valida_transaccion(2, to_date('08052007', 'ddmmyyyy'));
END;

por Walter | 19/03/2008 21:18:09

RE: ORA-06502

Para mduran
Si el procedimiento esta recibiendo una variable VARCHAR y una DATE, el llamado deberia ser p_valida_transaccion('1', to_date('11092006', 'ddmmyyyy'));
ya que si le envia 1 puede que el motor de la DB no realice la conversion.

por ANONIMO | 11/04/2008 04:06:28

RE: ORA-06502

Para el que le da el problema con el Excel sólo con un usuario, debe probar qué configuración regional a nivel de Windows tiene el usuario, puede ser que la tenga diferente a los demás (lo típico es que use coma, en vez de punto decimal, o viceversa). A menudo la configuración regional de Windows puede causar algún error de despliegue de campos si a la hora de programar se utilizaron formatos "en duro" (ej. 99,990.00) en vez de formatos dinámicos (ej. 99G990D00).

por ANONIMO | 11/04/2008 04:09:32

RE: ORA-06502

Algo extraño que me ha sucedido es que ese error da en una forma que no ha tenido ningún cambio y funcionaba bien. Lo que he hecho y casi siempre me ha funcionado es que busco un procedimiento que estoy seguro que se ejecuta siempre, lo "modifico" (con sólo agregarle un espacio en blanco en cualquier lugar), lo recompilo y genero. Como por arte de magia el problema se resuelve... Pulguitas que salen....

por Yasna | 24/10/2008 08:52:09

RE: ORA-06502

En mi caso me arrojo el error cuando estaba asignando un valor mas largo que la variable varchar declarada. Aumente el largo de la variable y se soluciono el error.

por RaffikiChan | 27/01/2009 11:55:15

RE: ORA-06502

Este error si bien es cierto apunta por la naturaleza del mensaje, mas a uno de tipo númerico. me he encontrado con la sorpresa que cuando tratas de asignar una variable de tipo VARCHAR2 con el contenido mayor a la variable del mismo tipo pero de menor capacidad.
Revisen las asignaciones de datos en variables String y los desbordamientos de valor en las Numericas.

por oa | 20/02/2009 08:37:36

RE: ORA-06502

vaya, ese error me sale cuando consumo los datos desde c#, le doy una solucion pero en algun momeno buelve a aparecer,

por EL JAIRO | 11/08/2009 14:08:27

RE: ORA-27041

Hi , my frends.
Al crear los control file me arroja el mensaje de error ORA-27041,les agradezco su ayuda

por MANUEL ADAMES DESDE PANAMA | 13/10/2009 11:31:07

RE: ORA-06502

TAMBIEN PUEDES PROBAR EL LA CANVA, EN LA PROPIEDAD MAXIMUN LENGHT DEL OBJETO, LE CAMBIAS EL TAMAÑO A UNO MAYOR, YA QUE DEREPENTE EL DATO QUE QUIERES METER EN ESE OBJETO ES MAS GRANDE QUE EL MAXIMO PERMITIDO
SALUDOS

por Jorge | 01/12/2009 05:28:25

RE: ORA-06502


Hola!
Una pregunta: ¿No se puede hacer esto?:
Cadena VARCHAR2(250);
numero NUMBER;
cadena := numero;
De no poder, ¿existen funciones IntToStr o algo parecido?
Muchas gracias de antemano.
Un saludo

por Nexus66x | 20/09/2010 08:44:14

RE: ORA-06502

El error puede ser por tratar de meter un valor en una variable donde no cabe.
Capturar el error: pues chequea el SQLCODE=-6502
Ejemplo:
declare
vMyVar number(1);
begin
vMyVar := 44;

exception when others then
if sqlcode=-6502 then
dbms_output.put_line('Actuación en caso de este error');
else
dbms_output.put_line(sqlerrm);
end if;
end;

por JOE | 29/09/2010 10:03:25

RE: ORA-06502

Puede ser un error por espacio en la BD????????????'

por duda | 30/09/2010 13:05:32

RE: ORA-06502

como puedo arreglar mi funcion esta funcion sirve para tomar 2 letras la primera y la ultima
create or replace function apellidom(a_materno Varchar2)
return varchar2
is

cant char(2);
cant2 char(2);
resultado char(2);
begin
for i in 1 .. length(a_materno) loop
IF i = length(a_materno) THEN
cant:= substr(a_materno,i,1);

END IF;
end loop;


cant2:=substr(a_materno,1,1);
resultado:=cant2+cant;

return resultado;
end;
DECLARE
Valor Varchar2(20);
BEGIN
Valor := apellidom('Manuel');
dbms_output.put_line (Valor);
end;

por ricajav777@gmail.com | 22/04/2013 19:57:08

como generar una copia

Hola estimados me gustaria que me ayuden con esta inquietud me gustaria generar una copia de una base de datos de un usuario a otro cual seri la sentencia que tengo que emplear en pl/sql para realizar esta copia

por ricajav777@gmail.com | 22/04/2013 19:57:38

como generar una copia

Hola estimados me gustaria que me ayuden con esta inquietud me gustaria generar una copia de una base de datos de un usuario a otro cual seri la sentencia que tengo que emplear en pl/sql para realizar esta copia

por Juanco Medina | 05/06/2015 17:41:30

RE: ORA-06502

Tengo un problema con mi ventana de comandos sql en apex, cuando intento ingresar a ella para construir cualquier consulta o codigo, me sale lo siguiente:


Error en el código PLSQL provocado durante el procesamiento del plugin.

ORA-06502: PL/SQL: error : error de conversión de carácter a número numérico o de valor

junto a un simbolo de erro en forma de x grande en toda la pantalla, como lo puedo solucionar, le ha pasado a alguien mas, he buscado en varias partes pero no encuentro solucion.. ayuda!

por Julia Atencio Saroka | 24/07/2017 22:28:56

RE: ora-06502

ORA-06502: PL/SQL: error : error de conversión de carácter a número numérico o de valor
Estoy cargando los datos en la pagina del gobierno de san luis para la inscripción a viviendas y me figura el error de referencia
desde ya gracias espero comentarios