sql >> Databasteknik >  >> RDS >> Mysql

MySQL `BEFORE INSERT TRIGGER` hur kan jag hoppa över datainfogning under villkor?

Två lösningar, båda ger ett fel:

  1. Anrop icke-existerande lagrad procedur - CALL non_existent_proc()
  2. Använd SIGNAL uttalande för att skapa felet (MySQL 5.5).

Exempel 1:

...
IF @found THEN
  CALL non_existent_proc();
END IF;
...

Exempel 2:

...
IF @found THEN
  SIGNAL SQLSTATE '02000' SET MESSAGE_TEXT = 'Wrong data';`
END IF;
...



  1. MySQL standardvärde baserat på vy

  2. Sammanfoga tabeller i två databaser med SQLAlchemy

  3. Problem med JPA, EclipseLink och skiftlägeskänslig mysql

  4. Villkorlig SUM på Oracle