"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment implémenter des clés étrangères composites dans MySQL ?

Comment implémenter des clés étrangères composites dans MySQL ?

Publié le 2024-12-26
Parcourir:328

How to Implement Composite Foreign Keys in MySQL?

Implémentation de clés étrangères composites dans SQL

Une conception de base de données courante implique l'établissement de relations entre les tables à l'aide de clés composites. Une clé composite est une combinaison de plusieurs colonnes qui identifie de manière unique un enregistrement dans une table. Dans ce scénario, vous disposez de deux tables, tutoriel et groupe, dans lesquelles vous devez lier la clé unique composite du didacticiel à un champ du groupe.

Selon la documentation MySQL, MySQL prend en charge le mappage de clés étrangères aux clés composites. Cependant, pour établir cette relation, vous devrez créer plusieurs colonnes dans la table de référencement (groupe) pour correspondre aux colonnes de clé primaire de la table référencée (tutoriel).

Voici les étapes à suivre pour créer le Mappage de clé étrangère :

-- Alter the 'group' table to add the composite foreign key columns
ALTER TABLE `group`
ADD COLUMN `beggingTime` time NOT NULL,
ADD COLUMN `day` varchar(8) NOT NULL,
ADD COLUMN `tutorId` int(3) NOT NULL;

-- Add the foreign key constraint
ALTER TABLE `group`
ADD FOREIGN KEY (`beggingTime`, `day`, `tutorId`)
REFERENCES `tutorial`(`beggingTime`, `day`, `tutorId`);

En créant les trois colonnes de clé étrangère (beggingTime, day et tutorId) dans la table de groupe, vous établissez la relation avec le clé primaire composite dans la table du didacticiel. Cela vous permet de joindre et de récupérer des données des deux tables en fonction de la clé composite.

Il est important de noter que même si l'utilisation de clés étrangères composites est techniquement prise en charge, il est généralement recommandé d'utiliser une clé primaire à une seule colonne à la place. En effet, les clés composites peuvent avoir un impact sur les performances et augmenter la complexité de la conception de votre base de données. Si possible, envisagez de réorganiser vos tables pour utiliser une clé primaire à une seule colonne dans le didacticiel.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3