Ceci est mon déclencheur.Erreur # 1054 dans MySQL Trigger
DELIMITER //
CREATE TRIGGER verificare_masa
BEFORE INSERT ON Rezervare
FOR EACH ROW
BEGIN
IF (NEW.Data_Rezervarii=Data_Rezervarii) AND (NEW.NumarMasa=NumarMasa) THEN
SET NEW.NumarMasa= NULL;
END IF;
END //
DELIMITER ;
Je veux faire trigger sur 1 table (rezervare). Lorsque j'exécute le trigger, il a été créé.
Mais, quand j'insérer des données dans le tableau rezervare, il devient Code d'erreur: 1054. Unknown column « Data_Rezervarii » dans « liste des champs »
Je veux vérifier si une réservation est déjà dans la base de données pour cette date et masse nécessaire est déjà réservé à cette date
J'ai utilisé votre code Code d'erreur: 1193. La variable système inconnue 'NumarMasa' –
Veuillez coller la sortie de 'SHOW CREATE TABLE Rezervare \ G',' SHOW CREATE TRIGGER verificare_masa \ G' et 'SHOW VARIABLES LIKE'% version% ''. Il est probable que vous avez manqué 'NEW' après' SET' - vous obtiendriez cette erreur exacte si vous essayiez de faire 'SET NumarMasa = ...' – elenst
J'ai résolu le problème, donc: DELIMITER // CREATE TRIGGER verificare_masa AVANT INSERT la réservation POUR CHAQUE LIGNE BEGIN SI (SELECT COUNT (*) d'où la réservation NEW.Data_Rezervarii = Data_Rezervarii ET NEW.NumarMasa = NumarMasa) = 1 ALORS SET NEW.NumarMasa = NULL; END IF; END // DELIMITER; –