je suis actuellement en train de réaliser un projet de boite mail, et j'ai un souci lors de l'exécution d'un de mes triggers. celui-ci a pour but de vérifier que lorsqu'un utilisateur veut en blacklister un autre, il ne l'ait pas déjà fait auparavant
create trigger insererBlacklist on blacklist
for insert
as
begin
declare @nb int
set @nb = 0
select @nb=count(*)
from BLACKLIST b, inserted i
where b.IDU=i.IDU
and b.IDBLACKLISTE=i.IDBLACKLISTE
/* idu représente l'utilisateur qui veut ajouter quelqu'un a sa blacklist
et idblackliste représente l'utilisateur blacklisté */
if @nb > 0
begin
raiserror('Vous avez déjà blacklisté cet utilisateur', 5, 100)
rollback transaction
end
end
le problème c'est que quelles que soient les valeurs que je veux insérer, il rentre dans le if
c'est bon j'ai trouvé, il faut faire le test superieur a 1 et pas a 0
[SQL SERVER] condition if ne fonctionne pas
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.