Précédent   Forum des professionnels en informatique > Général Développement > Conception > Méthodes > Merise
Merise Systémique, Cycle projet (V, W), flux, traitements ... Avant de poster -> F.A.Q Merise
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/10/2011, 22h08   #1
Invité régulier
 
Inscription : juin 2005
Messages : 39
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 39
Points : 9
Points : 9
Par défaut Optimisation de la structure d'un MCD

Bonjour,

J'aurais trois questions d'optimisation à vous exposer (pour poser les bases je travail sur un site de rencontre tout simple pour un travail d'étude):

1 - J'ai une table utilisateur (nom, prénom, date naissance, profession, études, aspect physique...) contenant environ 60 champs différents et elle sera l'une des plus importante aussi bien en terme de données qu'en terme de consultation.
Ma question est la suivante :

1-1 : Est-il préférable de diviser cette table en plusieurs sachant que pour la recherche j'aurais surement besoin de toutes les informations?
2 - Pour la recherche par critères j'ai la possibilité de le faire sur plusieurs critères (couleurs de cheveux, taille, etc... normal ) mais aussi plusieurs critères sur même un critère (exemple: je veux que la personne soit blonde ou brune ou rousse)
Jusque là pas de problème j'utilise la requête qui va bien (sur la table que nous avons vu sur le point 1) exemple :
Select nom_util, age_util
from utilisateur
where couleur_chv = "blond"
or couleur_chv = "brun"
or couleur_chv = "roux";
Par contre si je souhaite sauvegarder une recherche en base et que l'utilisateur peut sauvegarder 0,n recherches, ça se complique.
Selon Merise il faudrait faire quelque chose comme ça (si je ne me trompe pas ) :
sauvegarde_recherche
id_sauv
id_utilisateur

nom_sauv
age_max
age_min
taille_max
taille_min
...
pratique_sport
id_sport
id_sauv

regularite
sports
id_sport

nom_sport
Et ainsi de suite pour chaque critères où le choix peut être multiple (couleur cheveux, style de film préférés...).
Mes questions sont les suivantes :

2-1 : Si je réalise ce type de schéma sur 50 ou 60 critères où le choix est multiple, ça va me faire pas mal de jointure et pas mal de données à regarder. N'y aurait-il pas un moyen plus simple ou moins demandeur en ressource?

2-2 : Est-il possible de supprimer la table sports et garder simplement la table pratique_sport?
Je m'explique, si je récupère le champ "nom_sport" dans la table pratique_sport alors
Pour l'insertion en base je pourrais utiliser des constantes dans le code (php ou autre) qui me donneront le nom du sport à insérer
Pour la lecture je n'aurais plus qu'à récupérer les sports pratiqués par l'utilisateur grâce à un select sur la table suivante :
pratique_sport
id_sport
id_sauv
nom_sport
regularite
Voilà j'espère avoir été le plus clair possible, merci pour les retours que vous pourrez me faire, peut-être que je suis complètement à côté???
Guizmo95 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h43.


 
 
 
 
Partenaires

Hébergement Web