Oracle
 sql >> Database >  >> RDS >> Oracle

Ricezione di errore durante l'esecuzione del pacchetto

Manca la dichiarazione del pacco. L'idea è di separare la dichiarazione del pacchetto ("l'intestazione", se vuoi), in modo che altri pacchetti/procedure/funzioni possano essere compilati dal corpo (l'implementazione).

Nel tuo caso, avresti bisogno di qualcosa come:

CREATE OR REPLACE package salary_sal AS
   PROCEDURE find_sal(c_dpt_no salary.dpt_no%TYPE);
END salary_sal;

Ora, una volta dichiarato il pacchetto, puoi crearne il corpo:

CREATE OR REPLACE package body salary_sal AS
   PROCEDURE find_sal(c_dpt_no salary.dpt_no%TYPE) IS
   c_sal salary.salary%TYPE;
   BEGIN
      SELECT salary INTO c_sal
      FROM salary
      WHERE c_dpt_no= 108;
      dbms_output.put_line('Salary: '|| c_sal);
   END find_sal;
END salary_sal;