Maison > base de données > tutoriel mysql > Comment implémenter des clés étrangères composites dans MySQL ?

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

Mary-Kate Olsen
Libérer: 2024-12-25 07:37:31
original
910 Les gens l'ont consulté

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 consiste à établir des 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 faire correspondre les colonnes de clé primaire dans 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`);
Copier après la connexion

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 primaire composite saisissez 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.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal