Hallo, Aufgabenstellung ist es per SQL Prozedure in einer Oracle Datenbank die gesendeteten SMS pro Monat zu ermitteln. Übersteigt der Wert eine bestimmte Höhe, dann soll eine Strafe in einer Tabelle gespeichert werden. Vielen Dank im vorraus für alle Ratschläge.
Erhalte derzeit volgenden Fehler: FEHLER bei Zeile 38: PLS-00103: Fand das Symbol „end-of-file“ als eines der folgenden erwartet wurde:
end not pragma final instantiable order overriding static
member constructor map
Hier nun der Code:
CREATE OR REPLACE PROCEDURE TEVEELSMS
(NUMMER_IN IN NUMBER)
IS
C_NUMMER NUMBER, C_BOETE NUMBER, C_TEGOED NUMBER;
CURSOR C1 IS
SELECT COUNT(VERZENDERMOBIELNUMMER)
FROM SMSBERICHT
WHERE trunc(DATUMTIJD, ‚MM‘) = trunc(SYSDATE, ‚MM‘)
AND VERZENDERMOBIELNUMMER = NUMMER_IN
AND VERZENDERMOBIELNUMMER IN(
SELECT MOBIELNUMMER
FROM KLANT
WHERE ABONNEMENTSVORM LIKE ‚SMS Budget‘);
CURSOR C2 IS
SELECT BOETE, TEGOED
FROM SMSTARIEF
WHERE ID LIKE ‚SMS Budget‘;
BEGIN
OPEN C1;
FETCH C1 INTO C_NUMMER;
OPEN C2;
FETCH C2 INTO C_BOETE, C_TEGOED;
IF C_NUMMER = C_TEGOED THEN
INSERT INTO BOETE(DATUM, MOBIELNUMMER, KOSTEN)
VALUES (SYSDATE ,NUMMER_IN, C_BOETE);
END IF;
COMMIT;
CLOSE C1;
CLOSE C2;
END;