Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Hibernate không thể tìm nạp SequenceInformation từ cơ sở dữ liệu

Tôi đã giải quyết vấn đề như sau. Đã tạo một phần mở rộng cho Oracle12cDialect. Giới hạn giá trị tối đa / tối thiểu của các cột đối với 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";
    }

}

Trong tệp application.properties đề cập đến việc triển khai phương ngữ

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

Bạn có thể tạo lại các chuỗi bằng cách giới hạn các giá trị tối thiểu và tối đa. Trong trường hợp của tôi, tôi không thể làm điều đó. Các khóa chính mà tôi sử dụng có thứ nguyên Số (12), nằm trong giới hạn phạm vi từ -9223372036854775807 đến 9223372036854775808 với biên độ lớn



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. oracle 11g và tích hợp mùa xuân ngủ đông và jsf

  2. Tôi có thể lưu trữ chuỗi nhị phân trong cột CLOB không

  3. Sự khác biệt giữa con trỏ rõ ràng và ẩn trong Oracle là gì?

  4. Sửa đổi truy vấn chế độ xem cụ thể hóa

  5. Hàm CURRENT_DATE trong Oracle