Inserer des données avec une condition

Par hdfs99, il y a 8 ans


Bonsoir tout le monde,

j'ai une table conge(id_conge,nombre_jour,annee,id_employe) je voudrais insérer des donnée mais je veux que chaque employé prend pour chaque année 20 jour il ne peut pas prendre plus de 20 jour chaque année par exemple si employé remplir un congé:

id conge:1

id_employe:455

nombre_jour:25

annee:2017

Erreur

pour chaque année l’employé ne peut pas surpasse 20 jour.

je veux des idée et conseil a propos a ce sujet est ce que il faut crée un trigger comment je peut faire.

Et merci

1 réponse

Pierrot01, il y a 8 ans

Salut,
avec un trigger :

pour l'insert :

CREATE TRIGGER conge_b_i BEFORE INSERT ON conge FOR EACH ROW BEGIN IF NEW.nombre_jour >20 THEN SIGNAL SQLSTATE '45000' set message_text='Le nombre de jour de peut exeder 20'; END IF; END

pour update :

CREATE TRIGGER conge_b_u BEFORE UPDATE ON conge FOR EACH ROW BEGIN IF NEW.nombre_jour >20 THEN SIGNAL SQLSTATE '45000' set message_text='Le nombre de jour de peut exeder 20'; END IF; END

Fonctionne à partir de MYSQL 5.5

@plus.

Pierre