De reden voor de PLS-00323-fout in Oracle is een niet-overeenkomende procedure of functiedeclaratie in de pakketspecificatie en de pakkettekst. Voer de volgende acties uit om dit op te lossen.
Los PLS-00323-fout in Oracle op
- Controleer de pakketspecificatie voor alle functies en proceduredeclaraties die moeten overeenkomen met de pakkettekst. Hieronder ziet u een voorbeeld van een niet-overeenkomende procedure.
Pakketspecificatie
CREATE OR REPLACE PACKAGE emp_pkg IS PROCEDURE update_comm (i_comm IN emp2.sal%TYPE); a number; END emp_pkg; /
Pakketlichaam
CREATE OR REPLACE PACKAGE BODY emp_pkg IS PROCEDURE update_comm (i_comm IN emp2.comm%TYPE) IS BEGIN UPDATE emp2 SET comm = sal * NVL (i_comm, 0) / 100; COMMIT; END update_comm; END emp_pkg; /
- Je kunt zien dat het hierboven gemarkeerde deel van de code het verschil maakt. In de specificatie is dit emp2.sal%type , en in het lichaam is het emp2.comm%type .
- Om deze wijziging zo nodig op te lossen. Verander bijvoorbeeld de sal in comm in specificatie of comm to sal in het lichaam.
Ik hoop dat dat helpt.
Zie ook:
- Verhoog toepassingsfoutvoorbeeld in PL/SQL
- Vind foutregelnummer in PL/SQL