Ich habe ein kleines Problem mit der Eindeutigkeit der Indexnamen in der Datenbank h2. Mit mysql/mariadb ist es möglich, den Index "X" für Tabelle A und Tabelle B gleichzeitig zu definieren. Bei der h2-Datenbank ist dies nicht möglich, da der Name des Indexes pro Datenbank eindeutig sein sollte.H2 Index Name Eindeutigkeit
Es ist ein Problem für mich, da ich eine Basis JPA Entity-Klasse mit der folgenden Eigenschaft definiert habe:
@org.hibernate.annotations.Index(name = "X")
protected String x;
Es wird von der Klasse A vererbt wird und B und die Indexerstellung nicht für die Klasse B mit dem folgenden Fehler:
ERROR [main] o.h.tool.hbm2ddl.SchemaUpdate - HHH000388: Unsuccessful: create index X on B(x)
ERROR [main] o.h.tool.hbm2ddl.SchemaUpdate - Index "X" already exists
Ist es möglich, automatisch Indexnamen erstellen oder irgendwie einen Adapter für H2 zu schaffen, die solche Indexnamen mit Tabellennamen tell winter Präfix wird?
Scheint wie du kein Glück haben. Ich würde vorsichtig sein, die Indizes auch als Anmerkungen zu definieren. Sie sind einfacher separat zu handhaben. – Kayaman