Tengo un error 6502 cuando recompilo. ¿A qué se debe?

Tu sabes porque pasa este error..
Lo que pasa es que se recompila y ya funciona muy bien.. Pero el punto es que no sabemos a que de debe..
El error en general es
OWS-05101: Execution failed due to Oracle error 6502
ORA-06502: PL/SQL: numeric or value error
ORA-06512: at line 5
PL/SQL Cartridge SERVICE: gfd/plsql
PROCEDURE: p_gdb_loginleftmenu

1 respuesta

Respuesta
1
Tal y como indicas con el código ORA-06502, se debe a un error de tipo de datos; pero puede ser debido a muchas cosas (asignación de un valor de un tipo a una var de otro tipo, asignación de un valor más largo de la longitud permitida, etc.)
Para saberlo exactamente deberías pasarme la parte del código donde se produce, aunque lo mejor es que hagas una traza delimitando el lugar del error hasta que encuentras la línea exacta, y allí compruebas los valores de los datos que se usan en dicha instrucción.
Hola gracias por contestar..
Lo más raro de este problema es que la linea que me dice es una linea comentada.. osea
este es parte del procedimiento ..
DROP PROCEDURE GFAPP01.P_GDB_LOGINLEFTMENU;
-- BEGIN PL/SQL BLOCK (do not remove this line) --------------------------------
CREATE OR REPLACE PROCEDURE GFAPP01.P_GDB_LOGINLEFTMENU(
v_userid in varchar2 DEFAULT NULL,
v_method in varchar2 DEFAULT NULL,
v_projtype varchar2 DEFAULT NULL,
v_gfd_userpwd varchar2 DEFAULT NULL)
IS
/*
CODE CHANGES LOG
Changed By: David Logsdon
Changed On: December 14, 1998
Description: Added an insert statement to track when a user enters the system. Done to begin
taking measurements on system usage
Changed By: Steve G. Karakasidis
Changed On: November 8, 1999
Description: Added text to the bottom of the Login form describing purpose of the GFD
Pero lo más raro. .Que no es siempre.. si no aveces y si lo recompilas ya no sale en error..
Gracias
Por lo que dices (a veces da y otras no dependiendo de si compilas o no). Parce que se trata de un error provocado por una modificación producida sobre otro objeto de la base de datos que sea usado por este procedimiento ¿es posible que hayas modificado algún objeto de base de datos que use este proc. Antes de que se produzca el error?
Te refieres a los packages de Oracle..¿?
Por ejemplo.
Si modificas algún paquete, tabla, procedimiento, etc. que use el procedimiento en cuestión, éste puede quedar inválido hasta que lo vuelvas a recompilar.
Debes tener cuidado de que en tus programas no se reproduzca esa secuencia de pasos, ya que si lo haces deberás comprobar la modificación de qué objeto provoca la recompilación, con el objetivo de que o no lo hagas, o bien, añadas una sentencia de recompilación.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas