Oracle ne prend pas en charge la ON DUPLICATE KEY UPDATE
syntaxe. Cela semble être une syntaxe spécifique à MySQL.
Très probablement, vous sembleriez vouloir un MERGE
déclaration
MERGE INTO table1 t1
USING (SELECT col1, col2, col3
FROM table2) ss
ON (t1.col1 = ss.col1) -- whatever the key is
WHEN MATCHED THEN
UPDATE SET t1.col1 = ss.col1,
t1.col2 = ss.col2,
t1.col3 = ss.col3
WHEN NOT MATCHED THEN
INSERT( t1.col1, t1.col2, t1.col3 )
VALUES( ss.col1, ss.col2, ss.col3 )