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

हाइबरनेट डेटाबेस से अनुक्रम सूचना प्राप्त नहीं कर सका

मैंने समस्या को निम्नानुसार हल किया। Oracle12cDialect के लिए एक एक्सटेंशन बनाया गया। कॉलम के अधिकतम/न्यूनतम मान को SQL तक सीमित करें

package ru.mvawork.hibernate;

import org.hibernate.dialect.Oracle12cDialect;

@SuppressWarnings("unused")
public class CustomOracleDialect extends Oracle12cDialect {

    @Override
    public String getQuerySequencesString() {
        return "select SEQUENCE_OWNER, SEQUENCE_NAME, greatest(MIN_VALUE,         -9223372036854775807) MIN_VALUE,\n"+
                "Least(MAX_VALUE, 9223372036854775808) MAX_VALUE, INCREMENT_BY,     CYCLE_FLAG, ORDER_FLAG, CACHE_SIZE,\n"+
                "Least(greatest(LAST_NUMBER, -9223372036854775807), 9223372036854775808) LAST_NUMBER,\n"+
                "PARTITION_COUNT, SESSION_FLAG, KEEP_VALUE\n"+
                "from all_sequences";
    }

}

application.properties फ़ाइल में एक बोली कार्यान्वयन को संदर्भित किया जाता है

spring.jpa.properties.hibernate.dialect=ru.mvawork.hibernate.CustomOracleDialect

आप न्यूनतम और अधिकतम मानों को सीमित करके अनुक्रमों को फिर से बना सकते हैं। मेरे मामले में, मैं यह नहीं कर सकता। मेरे द्वारा उपयोग की जाने वाली प्राथमिक कुंजियों में आयाम संख्या (12) होती है, जो -9223372036854775807 से 9223372036854775808 तक की सीमा के भीतर बड़े अंतर के साथ आती है



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल में बहु-पंक्ति डालने का सबसे अच्छा तरीका?

  2. java.lang.UnsatisfiedLinkError:जावा में कोई ocijdbc11 नहीं। पुस्तकालय.पथ

  3. Oracle में वैज्ञानिक संकेतन में संख्याओं को कैसे प्रारूपित करें

  4. Oracle में कैलेंडर तालिका कैसे पॉप्युलेट करें?

  5. ओरेकल एसक्यूएल में औसत तिथियां