
10/05/2006, 13:21
|
| | Fecha de Ingreso: marzo-2006
Mensajes: 19
Antigüedad: 19 años Puntos: 0 | |
Problema con trigger en MySql Hola: estoy tratando de desarrollar una base de datos para guardar información sobre mis discos, y a la hora de crear un trigger para impedir la inserción de dos discos iguales, me encuentro con que me da el siguiente error, sin tener ni idea del por qué: ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OR UPDATE ON Discos FOR EACH ROW
BEGIN
IF NEW.titulo <> OLD.titulo AND NEW' at line 2
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END IF' at line 1
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END' at line 1
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '/' at line 1
El código del trigger es este, y la verdad, si podéis echarme una mano a la hora de ver qué es lo que falla, os lo agradecería horrores, porque a mí no se me ocurre mucho... CREATE TRIGGER insercion
BEFORE INSERT OR UPDATE ON Discos FOR EACH ROW
BEGIN
IF NEW.titulo <> OLD.titulo AND NEW.grupo <> OLD.grupo AND NEW.anio <> OLD.anio THEN
RAISE_ERROR(-20005,'El disco ya existe en la base de datos');
END IF;
END;
/
Gracias de antemano ;) |