REPLACE
вътрешно извършва изтриване и след това вмъкване. Това може да причини проблеми, ако имате ограничение за външен ключ, насочено към този ред. В тази ситуация REPLACE
може да се провали или по-лошо:ако вашият външен ключ е настроен за каскадно изтриване, REPLACE
ще доведе до изтриване на редове от други таблици. Това може да се случи, въпреки че ограничението е било изпълнено както преди, така и след REPLACE
операция.
Използване на INSERT ... ON DUPLICATE KEY UPDATE
избягва този проблем и затова се предпочита.