MySQL-INSERTS mit einem Trigger verhindern
Um das Einfügen einer Zeile zu verhindern, wenn eine bestimmte Bedingung erfüllt ist, z. B. ein in der Zukunft festgelegtes Geburtsdatum können Sie einen Trigger erstellen. So geht's:
CREATE TRIGGER foo BEFORE INSERT ON table FOR EACH ROW BEGIN IF NEW.birthdate > CURRENT_DATE() THEN SIGNAL SQLSTATE '45000'; END IF; END;
Einfügung abbrechen
Um die Einfügung innerhalb des Triggers abzubrechen, verwenden Sie die SIGNAL SQLSTATE-Syntax. Um beispielsweise einen Fehler auszulösen, wenn das Geburtsdatum in der Zukunft liegt, würden Sie Folgendes verwenden:
SIGNAL SQLSTATE '45000';
Dadurch wird eine nicht behandelte benutzerdefinierte Ausnahme ausgelöst und das Einfügen verhindert.
Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Einfügungen basierend auf einer Bedingung mithilfe von Triggern verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!