phpbar.de logo

Mailinglisten-Archive

[php] Datenbankeintrage und Zuordnungen

[php] Datenbankeintrage und Zuordnungen

Enrico Weigelt php_(at)_phpcenter.de
Tue, 2 Apr 2002 14:24:34 +0200


On Tue, Apr 02, 2002 at 12:48:22PM +0200, Wolfgang Hauck wrote:

<snip>
> Hier ist es moeglich, mit einer SQL - Abfrage in die x - te Generation zu 
> schauen!

problematisch ist es aber, ganze ahnenketten auszuwerten, also suchen
in baeumen. ich habs aber kuerzlich mit ein paar tricks hingekriegt,
tatsaechlich in SQL rekursive funktionen zu implementieren, sodass 
man das ganze alles in einer query unterkriegt. ist aber halt nicht
so sonderlich schnell beim lesen, dafuer aber ist das einfuegen 
sehr flott und problemlos.

eine andere variante geht ueber verschachtelte mengen (nested sets).
der trick an der sache liegt darin, dass jeder teilbaum ein gewisses 
interval einnimmt, in dem wurzel und alle kindknoten liegen.
dadurch lassen sich alle unterknoten mit einem einfachen integer-
vergleich rausfischen ... 
vorteil: sehr schnell beim select, aber insert ist recht umstaendlich
und langsam, weil da vielfach ganze teilbaeume neu nummeriert 
werden muessen ...

irgentjemand hatte hier mal einen link zu einer howto dazu gepostet,
leider find ich ihn aber hier nicht mehr :(


dennoch koenntest du dir vielleicht auch mal prolog anschauen, da
das genau auf rekursive probleme ausgelegt ist ...

~-n
--
 Enrico Weigelt    ==   meTUX IT services 
 software development, IT service, internet security solutions
 www:     http://www.metux.de/        phone:     +49 36207 519931
 email:   contact_(at)_metux.de            cellphone: +49 174 7066481


php::bar PHP Wiki   -   Listenarchive