REPLACE आंतरिक रूप से एक डिलीट और फिर एक इंसर्ट करता है। यह समस्या पैदा कर सकता है यदि आपके पास उस पंक्ति की ओर इशारा करते हुए एक विदेशी कुंजी बाधा है। इस स्थिति में REPLACE विफल या बदतर हो सकता है:यदि आपकी विदेशी कुंजी कैस्केड हटाने के लिए सेट है, तो REPLACE अन्य तालिकाओं से पंक्तियों को हटा दिया जाएगा। ऐसा तब भी हो सकता है, जब REPLACE . से पहले और बाद में बाधा पूरी हो गई हो ऑपरेशन।
DUPLICATE KEY UPDATE पर INSERT ... ON DUPLICATE KEY UPDATE इस समस्या से बचा जाता है और इसलिए इसे प्राथमिकता दी जाती है।