sql >> Base de Datos >  >> RDS >> Oracle

ORA-04068:el estado existente de los paquetes se ha descartado ORA-04065:procedimiento almacenado no ejecutado, alterado o descartado

La sesión donde se llama actualmente al paquete, conserva ese estado del paquete. Si vuelve a compilar el paquete, en el momento en que se vuelva a llamar al paquete en esa sesión, aparecerá este error.

  1. Puede ejecutar DBMS_SESSION.RESET_PACKAGE; para liberar la memoria, los cursores y las variables del paquete después de que la llamada PL/SQL que hizo que la invocación termine de ejecutarse.

  2. Puede cerrar todas las sesiones existentes y volver a ejecutar.

  3. Podría hacer el paquete, SERIALLY_REUSABLE Packages usando PRAGMA SERIALLY_REUSABLE; declaración. Si un paquete es SERIALLY_REUSABLE , su estado de paquete se almacena en un área de trabajo en un pequeño grupo en el área global del sistema (SGA). El estado del paquete persiste solo durante la vida de una llamada al servidor.