Anledningen till PLS-00323-felet i Oracle är en oöverensstämmelse i procedur eller funktionsdeklaration i paketspecifikationen och paketets kropp. För att lösa detta, vidta följande åtgärder.
Lös PLS-00323-fel i Oracle
- Kontrollera paketspecifikationen för alla funktioner och procedurdeklarationer som de ska matcha med paketets innehåll. Nedan är ett exempel på en felaktig procedur.
Paketspecifikation
CREATE OR REPLACE PACKAGE emp_pkg IS PROCEDURE update_comm (i_comm IN emp2.sal%TYPE); a number; END emp_pkg; /
Pakettext
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; /
- Du kan se att den ovan markerade delen av koden har skillnaden. I specifikationen är det emp2.sal%type , och i kroppen är det emp2.comm%type .
- För att lösa denna ändring som lämpligt. Ändra till exempel sal till comm i specifikationen eller komma till salu i kroppen.
Hoppas det hjälper.
Se även:
- Höj exempel på applikationsfel i PL/SQL
- Hitta felradnummer i PL/SQL