Hi,
[...]
PS: die Angabe unter LINK öffnet im Fall einer Zahl den Baum mit dieser ID (sollte zumindest) - aber vielleicht ist mein ganzer Denkansatz falsch :(
Ja, das Datenmodell ist _etwas_ komisch. Wenn ich es richtig sehe, stehen komische Werte in den Spalten childs / link. Childs sieht aus, als seien das Anzahlen?! Falls das so ist: Die gehören natuerlich nicht in eine DB sondern können jederzeit mit einem Select Count ermittelt werden. Schreibt man derartige Aggregate in die DB musst Du die ja jedesmal bei Änderungen updaten. Ganz schlechte Idee...;)
BTW: Was ist das für eine id-Spalte? Ein Primary Key jedenfalls nicht...
Also, alles, was für dich wichtig ist, ist doch nur, ob (und wenn ja: welchen) parent-Satz ein Satz hat. Und das klappeerst Du rekursiv durch.
Die Tabelle sollte also eher so aussehen, wobei id der Primaerschluessel ist.
id parentid text
1 NULL Brot
2 1 Korn
4 2 Mischkorn
5 2 Roggen
6 2 Weizen
7 2 Hafer
8 1 Weiß
9 8 WeißmitX
Wenn der Kram innerhalb der gleichen Hierarchien jetzt einfach alphabetisch (oder nach dem PK) sortiert wird, ist alles gut. Wenn Du noch eine Sortierspalte brauchst, läufts Du wieder in die Falle, bei Einfügungen Updates über die folgenden Saetze machen zu muessen, was kein gutes Modell waere.
cul,
Falk