Hibernate version: 3.2.0.cr2
Hibernate Annotations: 3.2.0.CR1
Hibernate Entity Manager: 3.2.0.CR1
JBoss version: 4.0.4.GA
EJB3 version: EJB-3.0 RC8-FD
Name and version of the database you are using: Ingres 3.0.105
Hi!
Ich habe folgende Frage bzgl. Redundanzvermeidung mit Hilfe von Hibernate.
Beispiel Adressverwaltung:
Ich habe eine Adresse, welche sich aus Straße, PLZ und Ort zusammensetzt. Natürlich kommen PLZ und Ort mehrfach vor, aber ich will sie nur einmal in der DB abspeichern. Der Benutzer soll aus den schon vorhandenen Orten und PLZs auswählen können oder selbst eine angeben.
Frage:
Wie verhindere ich nun, dass ich zwei PLZs mit den gleichen Werten abspeichere? Sprich, wie kann ich Hibernate mitteilen, falls schon eine PLZ mit dem Wert xy in der DB existiert, dass Hibernate nur den FK auf die PLZ aktualisieren soll? Ist dies überhaupt möglich? Oder muss ich von Hand aus nachschaun, ob eine PLZ mit dem Wert xy schon existiert, falls ja, per Query holen und als detached-Objekt mit dem Ort in der Adresse mergen?
Danke!
Christian
|