@Argorate > Ce que tu dis est absolument absurde; attention ne prends pas cela pour une attaque; voici pourquoi.
Utilisez une base de données et ce servir d'un champ dans lequel tu concatènes les pré-requis est un non sens, tu y perds la philosophie d'une base de données qui se veut être une structuration atomique de tes données. De plus, tu perds plus en pratiquant cette technique qu'en utilisant la base de données telle qu'elle doit l'être.
Une modélisation correct de ta base de données, te permet en une seule requête de récupérer des données structurées. Hors là, avec cette technique tu es obligé de traiter une nouvelle fois les données pour en retirer la quintescence. C'est une perte en temps et en ressources.
Donc plutôt que de faire de la concaténation, il faut une table qui contient autant d'entrée que nécessaire pour les prérequis d'une construction.
Voici un exemple :
Un bâtiment : Réservoir de Gazoil
Ses prérequis : Puit de pétrole niveau 1, Pipeline niveau 1
Supposons que le Réservoir de Gazoil possède l'identifiant 50, le Puit de pétrole possède l'identifiant 15 et le Pipeline possède l'identifiant 24.
La table des prérequis contiendra 2 entrées structurées comme ci-suit :
prerequis(id_construction, id_construction_requise, niveau_construction_requise);
prerequis(50, 15, 1);
prerequis(50, 24, 1);
Ainsi, il est plus aisé au travers de requête, sous-requête de savoir si il est possible de créer ce dit bâtiment.
Utilisez une base de données et ce servir d'un champ dans lequel tu concatènes les pré-requis est un non sens, tu y perds la philosophie d'une base de données qui se veut être une structuration atomique de tes données. De plus, tu perds plus en pratiquant cette technique qu'en utilisant la base de données telle qu'elle doit l'être.
Une modélisation correct de ta base de données, te permet en une seule requête de récupérer des données structurées. Hors là, avec cette technique tu es obligé de traiter une nouvelle fois les données pour en retirer la quintescence. C'est une perte en temps et en ressources.
Donc plutôt que de faire de la concaténation, il faut une table qui contient autant d'entrée que nécessaire pour les prérequis d'une construction.
Voici un exemple :
Un bâtiment : Réservoir de Gazoil
Ses prérequis : Puit de pétrole niveau 1, Pipeline niveau 1
Supposons que le Réservoir de Gazoil possède l'identifiant 50, le Puit de pétrole possède l'identifiant 15 et le Pipeline possède l'identifiant 24.
La table des prérequis contiendra 2 entrées structurées comme ci-suit :
prerequis(id_construction, id_construction_requise, niveau_construction_requise);
prerequis(50, 15, 1);
prerequis(50, 24, 1);
Ainsi, il est plus aisé au travers de requête, sous-requête de savoir si il est possible de créer ce dit bâtiment.