Comprendre la syntaxe de Insert or Update
Bonjour a tous
j'ai besoin d'utiliser
Code:
Insert or Update....
pour effectuer des mises a jour entre deux bases.
Mon problème est que je veut comprendre comment ça marche. pas trop a l'aise avec l'anglais :aie:
Pour le moment voila ce que je pense comprendre :
Code:
1 2
|
UPDATE OR INSERT INTO MATABLE (Champ1,Champ2)VALUES(:Champ1,:Champ2) |
Dans cet exemple:
Si un des champs (champ1 ou champ2) est différents de l'ancien enregistrement, on a un UPDATE du champ concerné.
Si les deux champs (champ1 et champ2) sont differents de l'ancien enregistrement, on un INSERT.
Es vrai ?
Ensuite j'ai le cas suivant :
Code:
1 2
|
UPDATE OR INSERT INTO MATABLE (Champ1,Champ2)VALUES(:Champ1,:Champ2) matching (champ1) |
Dans cet exemple :
A quoi sert la clause MATCHING
Merci pour vos éclaircissements