2016-02-05 11 views
5
existiert

ich eine Anwendung an Migration mit Hibernate 3 läuft einen seltsamen Fehler Hibernate 5.enMigrating Hibernate 3 bis 5: Beziehung hibernate_sequence nicht

ich habe:

ERROR: relation hibernate_sequence does not exist

Wir *.hbm.xml Mapping-Dateien verwenden und alles hat gut funktioniert, bis ich die Hibernate-Version geändert habe. Ich meine, wir haben eine ziemlich direkte Zuordnung mit ID-Spalte und DB-Sequenzgenerator und trotzdem war Hibernate nicht in der Lage, die richtige Konfiguration auszuwählen.

<hibernate-mapping> 
    <class name="com.boyan.MyClass" table="my_class"> 
     <id name="id" type="long"> 
      <column name="id" /> 
      <generator class="sequence"> 
       <param name="sequence">my_class_seq</param> 
      </generator> 
     </id> 
... 
    </class> 
</hibernate-mapping> 

Antwort

10

Ich begann in den Hibernate Code Graben und sah, dass SequenceGenerator veraltet ist und die neuen Möglichkeiten nutzen SequenceStyleGenerator. Ich war sehr verwirrt, als ich bemerkte, dass in der neuen Version die Eigenschaft, die den Sequenznamen angibt, von sequence zu sequence_name geändert wurde. So schließlich, wenn ich geändert:

<param name="sequence">my_class_seq</param> 

zu:

<param name="sequence_name">my_class_seq</param> 

alles funktionierte.

1

Ich stieß auf das gleiche Problem und ich verwendete Annotationen. Lösung war die angenommene Antwort JPA GenerationType.AUTO not considering column with auto increment. Wenn Sie Anmerkungen verwenden, sollten Sie Folgendes verwenden.

@GenericGenerator(name = "my_seq", strategy = "native", parameters = { 
    @Parameter(name = "sequence_name", value = "mydb_seq") 
}) 
Verwandte Themen