Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में `REPLACE` और `INSERT ... ON DUPLICATE KEY UPDATE` के बीच व्यावहारिक अंतर क्या हैं?

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

DUPLICATE KEY UPDATE पर INSERT ... ON DUPLICATE KEY UPDATE इस समस्या से बचा जाता है और इसलिए इसे प्राथमिकता दी जाती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql लेनदेन - किसी भी अपवाद पर वापस रोल करें

  2. समय () उदाहरण – MySQL

  3. MySQL / MariaDB तालिका के लिए वर्तमान Auto_Increment अनुक्रम संख्या कैसे प्राप्त करें

  4. MySQL में OCTET_LENGTH () फ़ंक्शन कैसे काम करता है

  5. MySQL रूट पासवर्ड कैसे रीसेट करें