J'ai une base de données SQL Server avec deux table: Utilisateurs et réalisations. Mes utilisateurs peuvent avoir plusieurs réalisations, donc une relation plusieurs-à-plusieurs.Recommandation de conception plusieurs-à-plusieurs SQL Server
À l'école, nous avons appris à créer une table associative pour ce genre de relation. Cela signifie créer une table avec un UserID et un AchivementID. Mais si j'ai 500 utilisateurs et 50 réalisations qui pourraient conduire à 25 000 lignes. En guise d'alternative, je pourrais ajouter un champ binaire à ma table Utilisateurs. Par exemple, si ce champ contenait 10010, cela signifierait que cet utilisateur a débloqué les première et quatrième réalisations.
Est-ce le contraire? Et lequel devrais-je utiliser.
Ces réalisations doivent-elles être complétées ou débloquées dans l'ordre consécutif? – NitroxDM
utiliser des tables associatives, si chaque utilisateur a 50 réalisations, alors ce sera 25000 lignes. Est-ce que chaque utilisateur aura 50? Je ne le pense pas. Et d'autres que voulez-vous réaliser, réduire l'espace disque ou des requêtes efficaces? – berkay
Utilisez la troisième table, il y a 25000 relations possibles et je doute que chaque utilisateur gagne chaque achivement et même si c'est le cas, c'est une solution beaucoup plus flexible. –