Je suis actuellement en train de développer un site en PHP/MySQL, et je tombe sur un "probleme" pour lequel je me demande quelle est la meilleur solution à adopter.
En gros j'ai une liste de jeux, une liste de genres.
Un jeu peux posseder plusieurs genres.
Si on suis une conception normale d'une base de données, on devrait normalement se retrouver avec 3 tables :
Jeux(`id`, `nom`, ...) = table qui contient tous les jeux
Genres(`ìd`, `nom`, ...) = table qui contient tous les genre
Jeux_Genres(`id_jeu`, `id_genre`) = association entre les 2 tables
Mais je me demande si il ne serai pas plus interessant d'ajouter un champ supplémentaire (par exemple `genres`) dans la table jeux qui contiendra les id des genres du jeu séparé par des virgules par exemple afin de se passer de la table Jeux_Genres.
L'avantage serai que si on récupere un jeu, on a en meme temps tous ses genres sans avoir a faire de jointure ou de requete supplémentaire.
L'inconvégnant par contre va se situer au niveau des recherches, si l'on doit rechercher un jeu par genre, d'un, le champ ne sera plus numérique (donc plus lent) mais en plus il faudra s'amuser à identifier les genres séparé par des virgules.
Qu'en pensez vous ?
Partager