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

PostgreSQL अनुक्रम का हाइबरनेट उपयोग अनुक्रम तालिका को प्रभावित नहीं करता है

मुझे भी यही समस्या थी। यह हाइबरनेट की आईडी आवंटन रणनीतियों से संबंधित है। जब आप GenerationType.SEQUENCE . चुनते हैं , हाइबरनेट HiLo रणनीति का उपयोग करता है जो डिफ़ॉल्ट रूप से 50 के ब्लॉक में आईडी आवंटित करता है। तो आप स्पष्ट रूप से आवंटन आकार . सेट कर सकते हैं इस तरह मूल्य:

@Id 
@SequenceGenerator(name="pk_sequence",sequenceName="entity_id_seq", allocationSize=1)
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="pk_sequence")
@Column(name="id", unique=true, nullable=false)
public int getId() {
    return this.id;
}

हालांकि, मैंने यह राय भी सुनी है कि allocationSize=1 . के साथ HiLo रणनीति का उपयोग करना अच्छा अभ्यास नहीं है। कुछ लोग GenerationType.AUTO . का उपयोग करने की सलाह देते हैं इसके बजाय जब आपको डेटाबेस-प्रबंधित अनुक्रमों से निपटना होता है

अपडेट करें: मैंने आवंटन आकार =1 के साथ जाना समाप्त कर दिया, और चीजें काम करने लगती हैं जैसा मैं अभी उम्मीद करता हूं। मेरा आवेदन ऐसा है कि मुझे वैसे भी आईडी के ब्लॉक की आवश्यकता नहीं है, इसलिए वाईएमएमवी।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql महीनों की जनरेट_सीरीज़

  2. क्या डेटा प्रकार NUMERIC स्टोर हस्ताक्षरित मानों को पोस्टग्रेज़ कर सकता है?

  3. PSQLException:परिणामसेट ठीक से तैनात नहीं है, शायद आपको अगला कॉल करने की आवश्यकता है

  4. इंडेक्स स्कैन ज्यादा बेहतर विकल्प होने पर इंडेक्स का उपयोग नहीं करना पोस्टग्रेस

  5. PostgreSQL में यूनिकोड वर्ण बदलें