Bonjour,

je viens vous demander de l'aide à propos d'un trigger sous SQL Serveur 2005 qui ne fait absolument pas ce que je lui demande

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
 
CREATE TRIGGER CONTROLEXIST]
ON  MEMBRES
FOR INSERT,UPDATE
 
AS 
DECLARE @nom nvarchar(100)
DECLARE @prenom nvarchar(100)
SET @nom = (SELECT NOM FROM INSERTED)
SET @prenom = (SELECT PRENOM FROM INSERTED)
BEGIN
      IF EXISTS(SELECT * FROM MEMBRES M
                     WHERE M.NOM = @nom
	        AND M.PRENOM = @prenom)
            BEGIN
                  ROLLBACK
            END	
END
En gros, je veux simplement que, lorsque j'ajoute un membre dans la table, il ne soit pas inséré si il existe déjà.

Ici, qu'il existe déjà ou non, il ne m'insère rien "la transaction s'est terminée dans le déclencheur...".
Est-ce que quelqu'un a une idée du problème?