Frage von smeagel, 22

Mysql Trigger?

Hallo, Ich wollt für meine Datenbank einen Trigger erstellen der bei dem einfügen einer neuer Anmeldung zuerst prüft ob der Student im gleichen oder höheren Semester ist als das angegebene Semester beim Fach. Leider funktioniert der Trigger nicht so wie ich es gerne hätte :D

DROP TRIGGER IF EXISTS trig_Anmeldung_Insert;
DELIMITER //
CREATE TRIGGER trig_Anmeldung_Insert
BEFORE INSERT ON Anmeldung
FOR EACH ROW
BEGIN
IF (SELECT Student.Semester ,Fach.Semester FROM Fach
INNER JOIN FachVeranstaltung ON Fach.PK_FachID = FachVeranstaltung.FK_Fach 
INNER JOIN Studiengang ON Fach.FK_Studiengang = Studiengang.PK_Studiengang
INNER JOIN Student ON Studiengang.PK_Studiengang = Student.FK_Studiengang
WHERE Student.Semester <  Fach.Semester) THEN
CALL cannot_insert_error;
END IF;
END //

Der Trigger selbst lässt sich problemlos erstellen aber ich bekomm bei jedem Insert in die Tabelle Anmeldung den Fehler:

Operand should contain 1 column(s)

Wäre super wenn mir hier jemand helfen könnte :D Schonmal Danke im Vorraus

Antwort
von Kiboman, 7

das was du da machst, dafür ist er auch nicht gedacht.

prüfe das im script bevor der insert aus geführt wird.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten