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

@TableGenerator के प्रारंभिक वैल्यू का तत्व हाइबरनेट जेपीए में समर्थित नहीं है?

पहले मान में 1001 के बजाय 1 है, जो हाइबरनेट बग है HHH-4228 , स्थिति के साथ ठीक नहीं होगा . आपके मामले में सही पहला मान 1000 के बजाय 1001 है, क्योंकि initialValue कॉलम को इनिशियलाइज़ करता है जो आखिरी stores को स्टोर करता है मान लौटाया गया (और लौटाया जाने वाला अगला मान नहीं)।

दृढ़ता.एक्सएमएल में निम्नलिखित का उपयोग करना (जैसा कि बग रिपोर्ट में भी सुझाया गया है) पहले मान के साथ समस्या को ठीक करेगा:

<property name="hibernate.id.new_generator_mappings" value="true"/>

allocationSize का अर्थ प्रश्न में गलत समझे जाने की संभावना है। यह वृद्धि का कदम नहीं है। इसका मतलब है कि तालिका से एक डेटाबेस क्वेरी के साथ कितने मान आवंटित किए जाते हैं। नई इकाई के लिए आईडी मान की आवश्यकता होने पर हर बार अतिरिक्त क्वेरी से बचने के लिए यह अनुकूलन है।

साइड उत्पाद यह है कि एप्लिकेशन के पुनरारंभ होने से अक्सर अनुक्रम में छेद हो जाते हैं:

  1. प्रारंभिक मान =1000,आवंटन आकार =100
  2. मान 1001 का उपयोग करें (=> मान कॉलम में मान 1100 में अपडेट किया गया है)।
  3. बंद करें और आवेदन शुरू करें
  4. अगला मान 1101 होगा, 1002 नहीं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कॉलम उपनाम WHERE-statement में पहचाना नहीं गया

  2. कॉलम केवल तभी प्रदर्शित करें जब वह शून्य न हो

  3. PHP/MySQL - पहले से ऑटो जेनरेट की गई तालिका में एक पंक्ति के लिए स्वत:उत्पन्न लिंक कैसे हटाएं?

  4. फ़ाइल में एक्स लाइनों को अनदेखा कर डेटाबेस में एसक्यूएल फ़ाइल कैसे आयात करें?

  5. क्या आप अपेक्षित परिणाम प्राप्त करने के लिए क्वेरी या अन्य क्वेरी को संशोधित करने में मदद कर सकते हैं