sql >> Base de Datos >  >> RDS >> Oracle

Obteniendo error al ejecutar el paquete

Te falta la declaración del paquete. La idea es separar la declaración del paquete ("el encabezado", por así decirlo), para que otros paquetes/procedimientos/funciones puedan compilarse contra él desde el cuerpo (la implementación).

En tu caso, necesitarías algo como:

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

Ahora, una vez declarado el paquete, puede crear su cuerpo:

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;