Bonsoir,
Je suis en train de faire une base de données pour une "commande", et je me pose une question sur la pertinence d'un choix que j'ai fait. Je voudrais avoir un retour là-dessus, ou même une simple orientation vers la documentation appropriée afin que je me fasse mon idée.
Je vais prendre un exemple fictif pour illustrer ma réflexion :
Imaginons une table membres qui détient toutes les informations personnelles qui vont bien.
Maintenant imaginons une table grades qui détient quant à elle les informations sur les droits de lecture et d'écritures de tous les grades.
Chaque membre possède un seul et unique grade, chaque grade est possédé par 0 ou plusieurs membres.
Problème : comment faire pour que ces deux tables soient liées de la manière la plus optimisée possible.
Pour le moment, j'ai décidé de créer une table membre_grade qui contient l'id d'un membre et l'id d'un grades, le tout formant une clef primaire.
Mais je me demandais si je ne peux pas mettre une simple référence sur la table membre qui pointerait sur le grade qui va bien.
Personnellement, j'ai l'impression que créer une nouvelle table grade_membre permet d'optimiser les traitements vu que les requêtes se feraient sur de plus petites tables (que deux éléments au contraire de la table membre qui en contient une vingtaine).
Surtout qu'en général, il s'agira d'utiliser l'ID d'un membre stocké dans une variable session, et de faire après une jointure entre membre_grade et grades.
Quelqu'un a un avis plus poussé sur le sujet ?
Merci d'avance.
Partager