MySQL se dispara antes de insertar valor
Tengo una mesastaff
conoffice
columna. Actualmente eloffice
La columna no acepta valores NULL. La aplicación que persiste en esta tabla tiene un error que significa que, cuando no se le ha asignado una oficina al personal, intenta insertar un valor NULO en la tabla.
Se me ha pedido que use un disparador para interceptar el inserto en elStaff
mesa y comprobar si eloffice
el valor es NULL y reemplazarlo con el valorN/A
.
A continuación es mi intento hasta ahora, pero tengoerror
en el intento de implementar. Alguna idea de como resolver esto.
CREATE TRIGGER staffOfficeNullReplacerTrigger BEFORE INSERT ON Staff
FOR EACH ROW BEGIN
IF (NEW.office IS NULL)
INSERT INTO Staff SET office="N/A";
END IF
END;
El error:
Error de la base de datos MySQL: tiene un error en su sintaxis SQL; consulte el manual que corresponde a la versión de su servidor MySQL para conocer la sintaxis correcta para usar cerca de 'INSERT INTO Staff SET office = "N / A"; FIN'