sql >> Databasteknik >  >> RDS >> Oracle

Får fel när paketet körs

Du saknar deklarationen för paketet. Tanken är att separera deklarationen för paketet ("huvudet", om du så vill), så att andra paket/procedurer/funktioner kan kompileras mot det från kroppen (implementeringen).

I ditt fall skulle du behöva något som:

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

Nu, när paketet har deklarerats, kan du skapa dess body:

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;


  1. Lagring av SHA1-hashvärden i MySQL

  2. ScaleGrid nu tillgängligt i Sydney AWS-regionen

  3. Databasanvändarhantering:Hantera roller för MariaDB

  4. Hur man får gårdagens datum i T-SQL