Ich erstelle dieses Verfahren, um Informationen aus einer Datenbank abzurufen. Dies ist meine erste Erstellung einer Prozedur. Ich bekomme immer einen Fehler um die Parameter, die ich beim Erstellen der Prozedur einstellen möchte. Es sagt etwas in Richtung der Erwartung eines anderen Symbols, wo das Semikolon ist. Jetzt erhalte ich einen Fehler um meine SQL-Anweisung, inkonsistente Datentypen: erwartete DATUM bekamPL SQL Prozedurfehler
CREATE OR REPLACE PROCEDURE HIREDATE
(
D_ID IN EMP.DEPARTMENT_ID%TYPE;
H_YEAR IN EMP.HIRE_DATE%TYPE;
)
--
AS
--
v_Last VARCHAR2(20);
v_First VARCHAR2(25);
v_HireDate DATE;
--
BEGIN
--
SELECT LAST_NAME,FIRST_NAME,HIRE_DATE
INTO v_Last,v_First,v_HireDate
FROM EMP WHERE DEPARTMENT_ID = D_ID
AND EXTRACT(YEAR FROM HIRE_DATE) = H_YEAR;
--
DBMS_OUTPUT.PUTLINE(v_Last||','||v_First||' '||v_HireDate);
--
EXCEPTION
--
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUTLINE('No data found for Department '||D_ID);
--
WHEN OTHERS THEN
DBMS_OUTPUT.PUTLINE('An unexpected error has occurred!');
--
END;
In Parameterdefinitionen werden keine Semikolons eingefügt. Kommas. – OldProgrammer