Vérifier un enregistrement si il existe

Résolu
mohellebi - 22 déc. 2012 à 19:10
 mohellebi - 26 déc. 2012 à 09:25
Bonjour tout le monde
depuis quelque temps je galaire pour résoudre une petite requete sql(Sql Serveur) qui consiste à vérifier si un enregistrement existe dans ma table ou pas.

vérifier si l'enregistrement existe j'exécute une modification sinon un ajout.

Merci d'avance pour votre aide

2 réponses

cs_Malkuth Messages postés 268 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 24 avril 2013 4
25 déc. 2012 à 13:19
Admettons la table suivante :

CREATE TABLE MaTable (
  ID int,
  Dat int
);


Il faudra exécuter le code suivant :

DECLARE @n_ID int;
DECLARE @n_Dat int;

SET @n_ID = XXX;
SET @n_Dat = YYY;

BEGIN TRAN;

IF EXISTS(
    SELECT 1
    FROM MaTable
    WHERE ID = @n_ID
)
BEGIN
    UPDATE MaTable 
    SET Dat = @n_Dat
    WHERE ID = @n_ID;
END
ELSE
BEGIN
    INSERT INTO MaTable ( ID, Dat )
    VALUES ( @n_ID, @n_Dat );
END

COMMIT TRAN;
1
Rejoignez-nous