Tengo el siguiente trigger, pero cuando voy a guardarlo me salta un error de sintaxis, he mirado en la página de MySQL y en varias páginas y su sintaxis es esta, pero no me funciona.
Código MySQL:
Ver original
Gracias de antemano
| |||
Error de sintaxis handlers Hola, tengo el siguiente problema. Tengo el siguiente trigger, pero cuando voy a guardarlo me salta un error de sintaxis, he mirado en la página de MySQL y en varias páginas y su sintaxis es esta, pero no me funciona.
Código MySQL:
Ver original Gracias de antemano |
| ||||
Respuesta: Error de sintaxis handlers Ese no es el sentido de un SQLEXCEPTION. En tu escenario, lo que podría ser es que no se encuentre el resultado del SELECT, pero eso no es una SQLEXCETION, sino un SQLWARNING, que no es lo mismo. Lee el manual de referencia. En cualquier caso, ni siquiera lo necesitarías, porque bien podrías hacer:
Código MySQL:
Pero si quieres, hazlo así:Ver original
Código MySQL:
Ver original En cualquier caso, te advierto que si lo que deseas hacer es insertar un nuevo departamento en caso de no existir en su tabla, y este trigger es para una tabla donde ese ID es FK, este trigger no funcionará, porque la validación de la restricción FK se dispara antes que el TRIGGER. Y si, en todo caso, estás haciendo un trigger sobre la propia tabla donde está definido, tampoco funcionará. Te comento que usar triggers para este tipo de cosas es una muy mala idea. Es mejor poner la lógica de validaciones de esta clase en un procedure que realice todas las validaciones y acciones necesarias.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
Etiquetas: |