30. Juli 2008 15:35
Hallo,
danke schon mal für die Antworten
, auch wenn sie mich bisher noch nicht weiter bringen.
Könnte man nicht die Knoten in den Ebenen fortlaufend durchnummerieren? Die Nummern der Ebenen, die zu einem bestimmten Knoten fürhren, könnte man durch Punkte trennen. So wäre Knoten 10.3.23 der 23te Sohn des 3 Sohns des dritten root. Wenn man einen neuen Sohn kreiert, weiß man ja, woher man kommt, und zählt in der Ebene, in der der Sohn entsteht, einfach durch. Die nächste freie Zahl wird angehängt. Also würde der erste Sohn des oa Knoten 10.3.23.1.
Das mit der fortlaufenden Nummerierung ist ja eben das Problem. Wie ich schon im Eingangspost geschrieben habe: das Problem ist nicht die Nummer des parent abzurufen und einzutragen, sondern die angehängte fortlaufende Nummer selbst!
Man müsste überprüfen, wie viele Entitäten auf dieser Ebene schon vorhanden sind und die maximale Nummer um eins inkrementieren.
Dabei sollte zudem beachtet werden, dass auch wenn einzelne Entitäten inaktiv sind, deren Nummer nicht erneut vergeben werden darf; soll ja eindeutig sein.
Oh, hab gerade noch mal genauer hingeschaut...
Diese Nummer führst du einfach in einem gesonderten Feld mit.
Hmmmm... das könnte evtl. tatsächlich eine Lösung darstellen.
Du meinst bei jeder zuordnung an eine übergeordnete Entität muss dort der Zahlenwert inkrementiert werden. Der Schlüssel der untergeordneten E. ergibt sich dann aus überg. Schlüssel + Feldwert.
Könnte funktionieren - Werd's mal testen, wenn nicht noch jemand einen besseren Vorschläg hat.
PS: Ich find's nur echt schwach, dass µ$ eine Autonumerierung zwar implementiert hat, aber nur für eine Hand voll Systementitäten zulässt