UPDATE
ist bei weitem viel schneller.
Wenn Sie UPDATE
, die Tabellensätze werden gerade mit neuen Daten überschrieben.
Wenn Sie DELETE
, sollten die Indizes aktualisiert werden (denken Sie daran, Sie löschen die ganze Zeile, nicht nur die Spalten, die Sie ändern müssen) und Datenblöcke können verschoben werden (wenn Sie PCTFREE
drücken Grenze)
Und das alles muss bei INSERT
noch einmal gemacht werden .
Deshalb sollten Sie immer
verwendenINSERT ... ON DUPLICATE KEY UPDATE
statt REPLACE
.
Ersteres ist ein UPDATE
Operation im Falle einer Schlüsselverletzung, während letztere DELETE
ist / INSERT
.