Ich versuche, einen Auslöser zu schreiben, die einen Standardwert in einer anderen TabelleMySQL-Trigger Einfügen vor
Nach dem Einfügen eines Datensatzes in meine Studenten Tabelle einfügen werde ich einen neuen Datensatz in meine Student_Chapter Tabelle eingefügt werden soll.
Die Student-Tabelle hat das Feld S_ID, das automatisch inkrementiert wird, und den Primärschlüssel für diese Tabelle.
Die Student_Chapter Tabelle hat zwei Felder STUDENT_ID Int Chapter_ID Int
ich diesen Trigger zu erstellen versucht, zu feuern, wenn Sie einen neuen Studentenakte eingeben. Allerdings bekomme ich einen Fehler beim Versuch, es zu erstellen ... und ich habe mehrere Dinge ausprobiert ... und schaut sich verschiedene Beispiele auf dieser Seite an.
Create Trigger AssignDefaultChapter_trigger
Before INSERT On Students
FOR EACH ROW
BEGIN
DECLARE Default_ID INT;
SET Default_ID =(SELECT C_ID FROM Chapter WHERE ChName = "UNASSIGNED";
Insert into Student_Chapter(Chapter_ID,Student_ID) values (Default_ID,New.S_ID);
END;
Soweit ich sehen kann, ist nichts falsch mit diesem Einsatz.
Der Fehler, den ich bekomme, ist # 1064 - Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL-Serverversion entspricht, um die richtige Syntax für die Verwendung in der Nähe von '; Legen Sie in Student_Chapter (Chapter_ID, STUDENT_ID) Werte (Default_ID, neu.‘In Zeile 6