Maison >base de données >tutoriel mysql >Clé primaire composite ou de substitution pour les tables plusieurs-à-plusieurs : laquelle est la plus performante ?
Dans le domaine de la conception de bases de données, les relations plusieurs-à-plusieurs posent une question : la La clé primaire de la table de mappage est-elle un composite des clés étrangères des tables associées, ou une clé de substitution à incrémentation automatique ?
Selon l'argument contre les clés de substitution, la création d'une clé primaire composite (PartID, DeviceID) impose le tri des disques physiques dans cet ordre. L'insertion d'un nouvel enregistrement (Part1/Device3) entre les entrées existantes (Part1/Device1) et (Part2/Device3) nécessiterait un brassage de données important, ce qui deviendrait problématique pour les tables de grande taille.
Les partisans des clés primaires composites rejettent ces préoccupations, affirmant que :
Les implications en termes de performances du choix entre des clés composites et de substitution sont minimes pour les mappages plusieurs-à-plusieurs à deux colonnes. Cependant, pour des mappages plus complexes ou des charges de travail d'insertion lourdes, les clés de substitution peuvent offrir des avantages, tels que :
Dans la plupart des cas, le choix entre les clés composites et de substitution pour les tables plusieurs-à-plusieurs est une question de préférence. Pour les mappages simples à deux colonnes, les clés primaires composites offrent simplicité et unicité. Cependant, pour les mappages complexes ou les charges de travail d'insertion élevées, les clés de substitution peuvent offrir de meilleures performances et une meilleure intégrité des données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!