Mailinglisten-Archive |
am 21.03.2001 9:29 Uhr schrieb Manuel Trunk unter trunk_(at)_explain.de:
> Hallo,
> große Frage:
> Wie würdet Ihr eine Baumstruktur (am besten beliebig viele Ebenen, wenn e=
s
> sein muß auch begrenzt) in einer Datenbank abbilden? Sollte man so was in
> nur einer Tabelle machen (Punkt 1 hat die Einträge 1, Unterpunkt von Punk=
t 1
> die Einträge 11, 2. Unterpunkt 12 usw.)? Oder sollte man verschiedene
> Tabellen nehmen und diese Verknüpfen über id's herstellen?
> Was sich vielleicht auch noch anbietet ist, das ganze im Dateisystem
> abzubilden?
> Vielen Dank im Voraus,
> Manuel
Ich hab das so gelöst:
Tabellenstrucktur:
|-----------|-------------|------------------------------|
| id | p_id | sonstige Inhalte..... |
|-----------|-------------|------------------------------|
| 1 | 0 | root |
| 2 | 1 | erste Ebene (eintrag 1) |
| 3 | 1 | erste Ebene (eintrag 2) |
| 4 | 2 | zweite Ebene ( eintrag 1 ) |
| 5 | 4 | dritte Ebene ( eintrag 1 ) |
| 6 | 5 | vierte Ebene ( eintrag 1 ) |
|-----------|-------------|------------------------------|
Mit einer Rekursion lauf ich dann durch die DB und erstelle eine
solche Strucktur:
root
erste Ebene (eintrag 1)
zweite Ebene ( eintrag 1 )
dritte Ebene ( eintrag 1 )
vierte Ebene ( eintrag 1 )
erste Ebene (eintrag 2)
mfg
Marco
php::bar PHP Wiki - Listenarchive