अगर आप चाहते हैं अनुक्रमों का उपयोग करने के लिए, आपको निश्चित रूप से sequence
. में से किसी एक का उपयोग करना चाहिए या seqhilo
यदि आप एक हाय/लो एल्गोरिदम जेनरेटर चाहते हैं। समस्या यह है कि "बिल्कुल भी काम नहीं करता" यह समझने में बिल्कुल भी मदद नहीं करता है कि आपको किस समस्या का सामना करना पड़ा।
बस के मामले में, यहाँ sequence
. के लिए एक स्निपेट है जनरेटर:
<id name="id" type="long" column="person_id">
<generator class="sequence">
<param name="sequence">person_id_sequence</param>
</generator>
</id>
और seqhilo
. के लिए जनरेटर:
<id name="id" type="long" column="cat_id">
<generator class="seqhilo">
<param name="sequence">hi_value</param>
<param name="max_lo">100</param>
</generator>
</id>
यदि आप जांच करना चाहते हैं कि यह "बिल्कुल काम क्यों नहीं करता है", तो मैं जेनरेट किए गए SQL का लॉगिंग यह देखने के लिए कि क्या हो रहा है।
यह भी ध्यान दें कि PostgreSQL identity
. का समर्थन करता है जनरेटर (देखें HB-875
और HHH-1675
) सीरियल या बड़े कॉलम का उपयोग करते समय।
संदर्भ
- हाइबरनेट कोर संदर्भ मार्गदर्शिका