UPDATE
er langt meget hurtigere.
Når du UPDATE
, tabelposterne bliver bare omskrevet med nye data.
Når du DELETE
, skal indekserne opdateres (husk, du sletter hele rækken, ikke kun de kolonner, du skal ændre), og datablokke kan flyttes (hvis du trykker på PCTFREE
grænse)
Og alt dette skal gøres igen på INSERT
.
Derfor bør du altid bruge
INSERT ... ON DUPLICATE KEY UPDATE
i stedet for REPLACE
.
Den tidligere er en UPDATE
handling i tilfælde af en nøgleovertrædelse, mens sidstnævnte er DELETE
/ INSERT
.