Comment puis-je créer un déclencheur pour vérifier si il existe un enregistrement sur une autre table?
Je suis l'aide de la version 5.0 de mysql.
Je suis en train de créer un déclencheur pour vérifier si une entrée(nom de l'Aliment) existe dans l'autre table.
Ive fait:
delimiter //
CREATE TRIGGER verifyExists BEFORE INSERT ON Sold
FOR EACH ROW
BEGIN
IF NEW.nameF not in (
select A.nameF
From Available D
where (NEW.nameF = A.nameF and NEW.nameR = A.nameR)
)
END IF;
END;
//
delimiter ;
ce doesen " le travail, pourquoi?
- Votre détente ne fait pas faire quoi que ce soit. Votre
IF
n'a pas deTHEN
. - N'est-ce pas ce que les contraintes de clés étrangères sont pour?
- maintenant, j'ai ensuite mais doesent travail.. hobbs, je le sais , mais j'ai besoin de créer qu'
Vous devez vous connecter pour publier un commentaire.
Vous avez un couple d'erreurs:
sqlfiddle démo
Si vous pouviez utiliser SIGNAL, c'est le meilleur moyen, mais depuis qu'il a été introduit en mysql 5.5, vous devrez le faire par un autre itinéraire. Une façon est d'appeler un non nulle de la fonction, comme l'a montré ci-dessus. De cette réponse