A noter que l'utilisation d'une méthode ou d'une autre peut dépendre aussi du SGBD utilisé.
Par exemple dans Oracle il y a des moyens de manipuler des arborescences avec la première méthode avec les clauses START WITH et CONNECT BY : http://www.adp-gmbh.ch/ora/sql/connect_by.html .
L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire
[^] # Re: 3 façons
Posté par Infernal Quack (site web personnel) . En réponse au message Sauvegarder et ressortir un arbre, typiquement les commentaires de linuxfr. Évalué à 1.
A noter que l'utilisation d'une méthode ou d'une autre peut dépendre aussi du SGBD utilisé.
Par exemple dans Oracle il y a des moyens de manipuler des arborescences avec la première méthode avec les clauses START WITH et CONNECT BY : http://www.adp-gmbh.ch/ora/sql/connect_by.html .
Dans la norme SQL 1999 il y a les Common Table Expressions qui semble permettent de faire de même mais je ne connais pas. Ca a l'air supporté par SQLServer http://sqlpro.developpez.com/cours/sqlserver/cte-recursives/ et PostgreSQL http://wiki.postgresql.org/wiki/CTEReadme
Par contre pour MySQL, rien de tout cela semble-t-il.
Pour le "Nested Sets" modèle c'est sympa pour la consultation mais pour l'insertion ou la suppression ça peut devenir lourd. Quand je parcours rapidement http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/ j'ai un peu peur :)
L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire