Bonjour,
J' effectue de la maintenance sur procédure stockée qui Update/Insert par l' intermédiaire de la commande MERGE.
Sur la ma table de destination je n 'ai pas de clé primaire... mais un index double(col1 et col2) unique. qui sont en réalité des clés externes. cette table est une table de relation.
Les conditions de jointure sont sur la col1 et col2
ON table_source.col1 = target_table.col1
AND table_source.col2 = target_table.col2
<table_source> avec target_table afin de déterminer où la correspondance a lieu.
Lors de l'execution violation de contrainte sur mon index unique col1 et col2
Je ne comprends pas pourquoi il y a un viol de contrainte sachant que mes conditions de jointure sont sur les champs qui composent l'index unique.
il devrait passer sur WHEN MATCHED THEN et faire update.
qu'est qui fait que le WHEN MATCHED THEN ne detecte pas mes données ?
devrais je creer une primarykey double unique dans la table destination?
Partager