Brauche Tipps für Datenbankdesign

Status
Nicht offen für weitere Antworten.

beta20

Top Contributor
Hallo zuzammen,

ich habe eine Tabelle "Activity", in der ich alle Aktivitäten speichere.
Nun ist das Problem aber, dass ich 80 FOREIGN_KEY zu allen Entities habe.

Ich habe z.B. die Entity:
- Reifen
- Speiche
- Sattel
-...

All diese Entities haben ebenfall in der Tabelle Activity einen Fremdschlüssel.

Nun ist aber mein Problem, dass mit JPA / Hibernate für jeden FK einen Index generiert und ich hier schon Mal eine Fehlermeldung bekomme.
21:30:47,298 INFO [stdout] (EJB default - 6) Hibernate:
21:30:47,298 INFO [stdout] (EJB default - 6)
21:30:47,298 INFO [stdout] (EJB default - 6) alter table activities
21:30:47,298 INFO [stdout] (EJB default - 6) add constraint FKs9qx51p69n9f7dbrmxwutfg8w
21:30:47,298 INFO [stdout] (EJB default - 6) foreign key (offer_fk)
21:30:47,298 INFO [stdout] (EJB default - 6) references offer (offer_id)

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Too many keys specified; max 64 keys allowed

Da ich nicht immer alle Entities holen möchte, habe ich den FK jeweils so deklariert:
@ManyToOne(optional = true, fetch = FetchType.LAZY)

Habe ich nun aber eine Query, in welcher in alles mit "LEFT JOIN FETCH" hole, bekomme ich eine Fehlermeldung, dass ich zu viele Columns habe.

Meine Frage:
Ist die Idee überhaupt gut, dass ich so viele FK´s habe?
Wie könnte man es anders lösen?

Ich habe eine Tabelle, in der alle Aktivitäten aufgelistet werden.
Demnach brauche hier alle FK´s auch...

Danke für jede Hilfe
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben