Bonjour a tous !

Je souhaite faire une requête avec condition sur une même table
qui fait que soit je fais un update si la ligne existe sinon je fais un insert
j'ai donc utilisé merge et voila ce que j'ai

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
MERGE INTO STOCK S1
  USING (SELECT * FROM STOCK WHERE  ID_AFFAIRE=15 AND NUM_ORDRE='xxxxxx') S2 
  ON (S1.ID_AFFAIRE = S2.ID_AFFAIRE AND S1.NUM_ORDRE = S2.NUM_ORDRE) 
  WHEN MATCHED THEN 
    UPDATE SET  S1.CLE_VERSION='xxxxxxxx'
  WHEN NOT MATCHED THEN 
    INSERT (S1.ID_AFFAIRE,S1.NUM_ORDRE) VALUES(15,'xxxxxxx')
Quand j'ai une ligne l'update est ok par contre si j'ai pas de ligne l'insert ne se fait pas ça me met '0 rows merged'.

Je suis un poil bloqué quelqu'un a une idée ?

D'avance merci