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

MySQL INSERT .... डुप्लीकेट अपडेट पर - ऑटोइनक्रिकमेंट में एक जोड़ता है

डालें ... डुप्लीकेट कुंजी अद्यतन पर InnoDB के AUTO_INCREMENT के प्रयोजनों के लिए "मिश्रित-मोड सम्मिलित" के रूप में वर्णित है संभालना। मिक्स्ड-मोड इंसर्ट मूल रूप से वे होते हैं जहां अधिकतम आवश्यक संख्या AUTO_INCREMENT मान ज्ञात हैं, लेकिन वह राशि जिसकी वास्तव में आवश्यकता होगी नहीं है।

मिक्स्ड-मोड इंसर्ट को डिफ़ॉल्ट रूप से विशेष रूप से हैंडल किया जाता है, जैसा कि MySQL डॉक्स :

यदि आप InnoDB का उपयोग कर रहे हैं, तो आपके विकल्प हैं:

  1. इन्सर्ट ... पर डुप्लीकेट कुंजी अपडेट करने से बचें
  2. innodb_autoinc_lock_mode 0 . के लिए पैरामीटर , "पारंपरिक" ऑटोइनक्रिकमेंट लॉक मोड के लिए, जो गारंटी देता है कि सभी INSERT स्टेटमेंट AUTO_INCREMENT . के लिए लगातार मान निर्दिष्ट करेंगे स्तंभ। हालांकि, यह कथन के दौरान लॉक करके पूरा किया जाता है, इसलिए इस सेटिंग से जुड़ी एक प्रदर्शन हानि होती है।
  3. (अनुशंसित) AUTO_INCREMENT में अंतराल पर ध्यान न दें कॉलम।

नोट:AUTO_INCREMENT MyISAM के तहत हैंडलिंग पूरी तरह से अलग है, जो इस व्यवहार को प्रदर्शित नहीं करता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL त्रुटि संदेश दिखाएं

  2. MySQL कॉन्फ़िगरेशन फ़ाइल का स्थान (यानी:my.cnf) निर्दिष्ट नहीं है

  3. एक ही क्वेरी का उपयोग करके कई पंक्तियों को सम्मिलित करते समय सभी सम्मिलित आईडी प्राप्त करें

  4. mysqli या PDO - पेशेवरों और विपक्ष क्या हैं?

  5. कई अपाचे स्थापित करने के बाद Xampp में अपाचे के साथ समस्या