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

मारियाडीबी - आईएनएनओडीबी वृद्धिशील रिकॉर्ड बनाते समय संख्या अनुक्रम को छोड़ रहा है - क्यों?

अद्वितीय . उत्पन्न करने के लिए auto_increment तंत्र आवश्यक है मान, जो पहले उत्पन्न किए गए किसी भी मूल्य से अधिक हैं। यह लगातार . उत्पन्न करने की गारंटी नहीं देता है मान।

इसके बारे में यहां कुछ चर्चा है:https://bugs.mysql.com/bug. php?id=57643

लगातार मूल्यों को ईमानदारी से उत्पन्न करने में बहुत कम महत्व है, क्योंकि कोई भी मूल्य अन्य कारणों से "खो" सकता है:

  • आपका INSERT विफल हो जाता है, उदाहरण के लिए UNIQUE KEY या FOREIGN KEY जैसी बाधाओं का उल्लंघन करने के कारण।
  • आप अपने INSERT के लिए लेन-देन वापस लेते हैं।
  • आप सफल होते हैं और प्रतिबद्ध होते हैं, लेकिन बाद में आपके द्वारा या किसी अन्य सत्र द्वारा पंक्ति को हटा दिया जाता है।

ऑटो-इंक मान किसी भी प्रकार की कतार में वापस नहीं आते हैं, क्योंकि अन्य समवर्ती सत्रों ने इस बीच और अधिक आईडी मान उत्पन्न किए होंगे। यह इनो डीबी के लायक नहीं है जो असंबद्ध आईडी मानों का एक पूल बनाए रखता है, क्योंकि वह पूल विशाल और बेकार हो सकता है।

साथ ही, किसी आईडी मान को "खोने" के लिए उपयुक्त हो सकता है, अन्यथा कोई व्यक्ति यह सोचेगा कि जिस पंक्ति को वे DELETE करना चाहते थे वह किसी तरह वापस आ गई।



  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. क्या मैं इस utf8 कैरेक्टर को बदल सकता हूँ?

  3. एकाधिक पंक्तियों के लिए एकल क्वेरी में सम्मिलित करने के लिए MySQL ON DUPLICATE KEY UPDATE

  4. PHP का उपयोग करके .frm फ़ाइल से तालिका संरचना कैसे प्राप्त करें?

  5. कोडइग्निटर/PHP/MySQL:जॉइन के साथ डेटा पुनर्प्राप्त करना