Salut a tous j'essaie de faire un trigger qui va géré des update multiple mais ca fonctionne pas voici mon code
Mais ca fonctionne si je fais seulement un update a la fois
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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 create trigger trgAfterUpdateProduitPrixMultiligne on Produits after update as declare @prix decimal(10,2) declare @newPrix decimal(10,2) declare @diff decimal(10,2) declare @descProduit varchar(50) set @descProduit=(select DescProduit from inserted) set @newPrix=(select PrixVente from inserted) set @prix=(select PrixVente from deleted) set @diff = (@newPrix-@prix)/@prix *100 if @diff >10 begin rollback raiserror('L''augmentation est plus que 10 pourcent donc le prix a ete augmenter seulement de 10 pourcent ',16,1) set @newPrix = (@prix * 0.1) + @prix update Produits set PrixVente=@newPrix where DescProduit=@descProduit end if @diff < -10 begin rollback raiserror('La diminution est plus que 10 pourcent donc le prix a ete diminué seulement de 10 pourcent ',16,1) set @newPrix = @prix-(@prix * 0.1) update Produits set PrixVente=@newPrix where DescProduit=@descProduit end go --test Update Produits set PrixVente = 7.00 where PrixVente > 5.00
Partager