Structures chaînées en SQL - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : Structures chaînées en SQL (/showthread.php?tid=1611) |
Structures chaînées en SQL - uriak - 20-08-2007 Voilà, je vais avoir besoin de stocker des structures constituant des listes en SQL. Et je voulais savoir s'il existait déjà un formalisme ou une manière pratique de faire les choses. Exemple : j'ai une structure de graphe dans ma BDD, sous la forme Code : table links : celle-ci définit donc des paires de noeuds liés par une chemin d'un type particulier et d'une distance définie. Maintenant si je veux définir un trajet emprunant ce graphe une solution facile serait de le stocker sous forme finale : Code : id_nodeStart, id_nodeEnd, totalLength, type, ... problème : si un noeud intermédiaire disparaît, ce stockage ne permet de mettre à jour le trajet. Donc il faut que je le stocke sous forme d'une suite de liaisons... Code : table trajets : avec pour un trajet, une suite de champ qui s'appellent. Mais à priori je ne peux pas réunir tous les composants d'un trajet en une seule requête (corrigez moi si je me trompe) et récupérer les informations utiles les plus souvents - départ, arrivée, distance - coûtera beaucoup. Du coup je serai tenté de stoker les éléments sous une forme plus complète, mais redondante Code : table trajets : Un trajet est composé d'éléments qui notent la liaison employée et l'id du prochain élément... Est-ce que vous voyez une meilleure solution ? RE: Structures chaînées en SQL - Klemmth - 20-08-2007 Personnellement je suis pas un pro en sql mais je ferai comme toi RE: Structures chaînées en SQL - Globe - 20-08-2007 Ouais j'aurais fais ça comme toi, d'ailleurs il me semble que j'avasi fait ça quand j'avais bossé sur un RPG par carte... Mais je ne comprend cependant pas la notion d'id du node ? t'as une autre table à coté ? Parce que moi il me semble que je stockais les coordonnées. RE: Structures chaînées en SQL - uriak - 20-08-2007 Le node correspondra à un bâtiment de stockage (chantier, entrepot, mine...) ou un lieu de transit (port, relais...) donc son id pointe vers une table contenant le type de lieu, le propriétaire, les coordonnées... RE: Structures chaînées en SQL - Globe - 21-08-2007 Ah ok, très bien merci d'avoir éclairci ce point |