Unfug
2013-05-09, 11:38:47
Schönen Guten Morgen,
Ich setze aktuell die MongoDB für ein privates Projekt ein und bin auf kleines designtechnisches Problem gestoßen.
Angenommen ich habe:
class Aufgabe
Kunde k
Die Aufgaben beinhalten also immer einen Kunden.
Jetzt kommt das Problem: Wenn ich den Kunden global updaten möchte (Name, Straße etc), dann ändert dieser sich ja nicht bei den vorhandenen Aufgaben. Es existiert ja keine Verbindung wie bei "Relationalen Datenbanken", sondern jeder Aufgabe wurde ein eigenes Objekt Kunde zugeordnet.
So...jetzt hab ich mir gedacht, dass ich jedem Kunde eine eindeutige ID zuordne und die Aufgaben Klasse wie folgt ändere
[code]
class Aufgabe
int KundenID
[code]
Somit hätte ich die Objekte getrennt und das ganze würde auch klappen. Das Problem: Ich finde, dass dieser Workaround Rotze ist. Eigentlich könnte man dann direkt einen OR Mapper für relationale DBs benutzen.
Vielleicht sehe ich den Wald vor lauter Bäumen nicht und es gibt ein wesentlich eleganteren Weg.
Gruß
Unfug
Update:
MongoDB beschreibt meinen Weg hier auch:
http://docs.mongodb.org/manual/reference/database-references/
Find ich persönlich aber nicht so schön, da ich auch DB unabhängig bleiben möchten.
Ich setze aktuell die MongoDB für ein privates Projekt ein und bin auf kleines designtechnisches Problem gestoßen.
Angenommen ich habe:
class Aufgabe
Kunde k
Die Aufgaben beinhalten also immer einen Kunden.
Jetzt kommt das Problem: Wenn ich den Kunden global updaten möchte (Name, Straße etc), dann ändert dieser sich ja nicht bei den vorhandenen Aufgaben. Es existiert ja keine Verbindung wie bei "Relationalen Datenbanken", sondern jeder Aufgabe wurde ein eigenes Objekt Kunde zugeordnet.
So...jetzt hab ich mir gedacht, dass ich jedem Kunde eine eindeutige ID zuordne und die Aufgaben Klasse wie folgt ändere
[code]
class Aufgabe
int KundenID
[code]
Somit hätte ich die Objekte getrennt und das ganze würde auch klappen. Das Problem: Ich finde, dass dieser Workaround Rotze ist. Eigentlich könnte man dann direkt einen OR Mapper für relationale DBs benutzen.
Vielleicht sehe ich den Wald vor lauter Bäumen nicht und es gibt ein wesentlich eleganteren Weg.
Gruß
Unfug
Update:
MongoDB beschreibt meinen Weg hier auch:
http://docs.mongodb.org/manual/reference/database-references/
Find ich persönlich aber nicht so schön, da ich auch DB unabhängig bleiben möchten.