relationale DB, Baummodellierung und Traversierung?
-
Hi,
mal angenommen ich habe eine Entität Kategorie die mit sich selbst in Beziehung steht. Das ganze soll dann später mal ein "Kategoriebaum" werden.
Welche Art der Beziehung ist da zu bevorzugen? Eine 0,1 zu 1,n, oder 1,1 zu 0,n oder gar 1,1 zu 1,n? Im Prinzip bin ich mir da grad nicht sicher welche der drei "Beziehungsarten" von den Bedingungen am besten passt. Die physische Umsetzung sollte ja bei allen gleich sein, der Entität Kategorie wird ein zusätzliches Attribut spendiert welches den Vorgänger symbolisieren soll.Und meine zweite Frage, wenn man jetzt eine derartige Tabelle hat wie bekomme ich dann z.B. diesen ganzen Baum ausgegeben, geht das mit "Standard SQL-Anfragen" bzw. wie baue ich die Rekursion ein?
tt
-
1,0..n
1 : entspricht ja dem Parentknoten, der ist immer nur einmal da und muss vorhanden sein,
0..n : die childenknoten müssen nich vorhanden sein, aber es können beliebig viele da sein.
Tabelle der Baumstruktur:
ParentID, ChildID, Comment
(Fett== schlüssel)
Travesieren würd ich rekursiv machen.. die wurzel des Baumes muss vorhanden
sein, wobei die ParentID ein fest definierte Wert/STring ist..P.S:.: hab früh mal was mit rekusiven SQL abfragen gemacht im studium.. weis aber nichmehr wie es ging, bzw. ob funktioniert hat, musst halt den rekusiven code mit SQL querys selbst schreiben