Oracle
 sql >> база данни >  >> RDS >> Oracle

Разрешете PLS-00323 грешка в Oracle

Причината за грешката PLS-00323 в Oracle е несъответствие в декларацията на процедура или функция в спецификацията на пакета и тялото на пакета. За да разрешите това, предприемете следните действия.

Отстранете PLS-00323 грешка в Oracle

  1. Проверете спецификацията на пакета за всички функции и декларации за процедури, които трябва да съвпадат с телото на пакета. По-долу е даден пример за несъответстваща процедура.

Спецификация на пакета

CREATE OR REPLACE PACKAGE emp_pkg
IS
PROCEDURE update_comm (i_comm IN emp2.sal%TYPE);
a number;

END emp_pkg;
/

Тяло на пакета

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;
/
  1. Можете да видите, че маркираната по-горе част от кода има разлика. В спецификацията е emp2.sal%type , а в тялото е emp2.comm%type .
  2. За да разрешите тази промяна, ако е подходящо. Например променете sal на comm в спецификация или comm to sal в тялото.

Надявам се това да помогне.

Вижте също:

  • Пример за повдигане на грешка в приложението в PL/SQL
  • Намерете номера на реда за грешка в PL/SQL
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 6 начина за избор на дублиращи се редове в Oracle

  2. Вземете тип данни на полето в оператор select в ORACLE

  3. RANK, DENSE_RANK и ROW_NUMBER функции в Oracle

  4. Какво всъщност използва LISTAGG с ORDER BY NULL като критерии за поръчка?

  5. Грешка в Oracle .Net ManagedDataAccess:Не можа да се зареди тип 'OracleInternal.Common.ConfigBaseClass' от сборка