SQL - Problema con trigger

 
Vista:
Imágen de perfil de María de Alejandría
Val: 12
Ha disminuido su posición en 3 puestos en SQL (en relación al último mes)
Gráfica de SQL

Problema con trigger

Publicado por María de Alejandría (7 intervenciones) el 16/04/2018 19:29:12
Saludos
Estoy intentando hacer un trigger que me muestre un mensaje antes de insertar en una tabla llamada punto de ventas si su código no se corresponde con el atributo título de una tabla llamada Ferias o de otra llamada eventos, es decir, que el código no esté en ninguna de las dos tablas:

He hecho esto pero siempre se muestra el mensaje de error:

1
2
3
4
5
6
7
8
9
10
11
12
13
DELIMITER //
 
CREATE TRIGGER `VerificaIdVenta` BEFORE INSERT ON  Pto_Ventas
FOR EACH ROW BEGIN
 
IF ((NEW.Código NOT IN(SELECT Titulo FROM Feria WHERE Titulo=NEW.Código) OR (NEW.Código NOT IN(SELECT Título FROM Eventos WHERE Título=NEW.Código )))) THEN SIGNAL
 SQLSTATE '45000' SET MESSAGE_TEXT = 'El código introducido no se corresponde con el de ninguna feria o evento';
 END IF;
 
 
END; //
 
DELIMITER //

Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 177
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

Problema con trigger

Publicado por leonardo_josue (1172 intervenciones) el 16/04/2018 22:01:17
Hola María:

Creo que es un error de lógica con los operadores OR. Tal como tienes la condición marcaría error si el código no existe en cualquiera de las dos tablas... Si el código EXISTE en ambas tablas entonces no te debería de marcar el mensaje.

Cambia el operador por AND y haz la prueba. Si continuas con problemas postea algunos datos de ejemplo y lo revisamos.

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de María de Alejandría
Val: 12
Ha disminuido su posición en 3 puestos en SQL (en relación al último mes)
Gráfica de SQL

Problema con trigger

Publicado por María de Alejandría (7 intervenciones) el 16/04/2018 22:11:53
Muchas gracias por aclararlo. Probaré con AND, en caso de que no me funcione pasaré ejemplos de ejecución.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de María de Alejandría
Val: 12
Ha disminuido su posición en 3 puestos en SQL (en relación al último mes)
Gráfica de SQL

Problema con trigger

Publicado por María de Alejandría (7 intervenciones) el 17/04/2018 20:52:44
Muchas gracias.Funciona
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar