Bonjour à tous

Je dois mettre en place un trigger permettant d'empêcher la suppression d'un bien.
Il devra le désactiver à la place de le supprimer que si il est inactif à la date de la suppression
la possibilité de désactiver le bien est fournie par le champ isEnabled (bit)et via la date DisabledDate (date)
Un bien ne peut être désactiver que si aucun échange n'est actif à la date de la suppression
Nom : diagramme.png
Affichages : 182
Taille : 12,4 Ko


Voici mon bout de code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
create trigger TR_NoSuppression
on [dbo].[BienEchange]
instead of delete
as
begin
	set nocount on
	declare @DateFinEchange date
	select @DateFinEchange =  [DateFinEchange] from [dbo].[MembreBienEchange] MBE join BienEchange BE
		on MBE.idBien = BE.idBien
	if(@DateFinEchange < getdate() )
	begin
		update BienEchange 
		set [isEnabled] = 1,[DisabledDate] = GETDATE()
		where idBien in (select idBien from deleted)
	end
end
Voila je sèche au moment de lui spécifier la contrainte du bien actif à la date de suppression

Merci