Bonjour tout le monde
je voudrais faire une suppression en cascade après la suppression d'un département avec un trigger
voilà le diagramme de base de donnée :
voilà ce que j'ai fai :
Le trigger a été crée pas de probleme mais quand j'ai effecué cette commande
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Create TRIGGER DelCascadeTrig ON département for DELETE AS DELETE FROM Employe where Ndept in ( select Ndept from deleted)
Voilà le message de l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 delete from département where département.NDept=1
Msg 547, Level 16, State 0, Line 2
The DELETE statement conflicted with the REFERENCE constraint "FK__Employe__NDept__0EA330E9". The conflict occurred in database "db", table "dbo.Employe", column 'NDept'.
The statement has been terminated.
j'ai essayé de faire cette solution pour éviter l'erreur precedente :
Mais malheureusement la même erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Create TRIGGER DelCascadeTrig ON département for DELETE AS DELETE FROM projet where CodeP in ( select participation.CdeP from Participation where Participation.Matr in ( select Employe.Matr from Employe where Employe.Ndept in ( select Ndept from deleted)))
merci d'avance
Partager