De sessie waarin het pakket momenteel wordt aangeroepen, behoudt die status van het pakket. Als u het pakket opnieuw compileert, krijgt u deze fout op het moment dat het pakket opnieuw wordt aangeroepen in die sessie.
-
U kunt DBMS_SESSION.RESET_PACKAGE; uitvoeren om het geheugen, de cursors en de pakketvariabelen vrij te maken na de PL/SQL-aanroep die ervoor zorgde dat de aanroep werd uitgevoerd.
-
U kunt alle bestaande sessies sluiten en opnieuw uitvoeren.
-
Je zou het pakket kunnen maken, SERIALLY_REUSABLE-pakketten door
PRAGMA SERIALLY_REUSABLE;
. te gebruiken uitspraak. Als een pakketSERIALLY_REUSABLE
. is , wordt de pakketstatus opgeslagen in een werkgebied in een kleine pool in het globale systeemgebied (SGA). De pakketstatus blijft alleen bestaan voor de duur van een serveroproep.