Maison > base de données > tutoriel mysql > Comment implémenter des relations un-à-un, un-à-plusieurs et plusieurs-à-plusieurs dans la conception de bases de données ?

Comment implémenter des relations un-à-un, un-à-plusieurs et plusieurs-à-plusieurs dans la conception de bases de données ?

Mary-Kate Olsen
Libérer: 2025-01-21 06:31:09
original
826 Les gens l'ont consulté

How Do I Implement One-to-One, One-to-Many, and Many-to-Many Relationships in Database Design?

Relations dans la conception de bases de données : un-à-un, un-à-plusieurs et plusieurs-à-plusieurs

Lors de la conception des tables de base de données, des relations doivent être établies entre les entités de données pour garantir l'intégrité des données. Explorons trois types de relations courants : un-à-un, un-à-plusieurs et plusieurs-à-plusieurs, et comment les mettre en œuvre.

Relation individuelle

Dans une relation un-à-un, chaque ligne d'un tableau correspond à une ligne unique correspondante dans l'autre tableau. Pour y parvenir, utilisez une colonne de clé étrangère dans la table enfant pour référencer la colonne de clé primaire dans la table parent. Par exemple :

<code>学生表:学生ID,名字,姓氏,地址ID
地址表:地址ID,地址,城市,邮政编码,学生ID</code>
Copier après la connexion

Une clé étrangère (student_id) dans la table d'adresses relie chaque adresse à un étudiant spécifique.

Relation un-à-plusieurs

Dans une relation un-à-plusieurs, chaque ligne du côté « un » (table parent) peut avoir plusieurs lignes homologues du côté « plusieurs » (table enfant). Utilisez les colonnes de clé étrangère dans la table enfant pour établir un lien vers les colonnes de clé primaire de la table parent. Par exemple :

<code>教师表:教师ID,名字,姓氏
课程表:课程ID,课程名称,教师ID</code>
Copier après la connexion

Chaque professeur peut avoir plusieurs cours, mais chaque cours n'appartient qu'à un seul professeur. La clé étrangère (teacher_id) dans le programme établit cette relation.

Relation plusieurs-à-plusieurs

Une relation plusieurs-à-plusieurs existe lorsque chaque ligne d'un tableau peut être liée à plusieurs lignes d'un autre tableau, et vice versa. Pour y parvenir, créez une table de jointure pour conserver la relation entre les deux tables liées. Par exemple :

<code>学生表:学生ID,名字,姓氏
课程表:课程ID,名称,教师ID
学生课程表:课程ID,学生ID</code>
Copier après la connexion

Les horaires des cours des étudiants permettent de savoir quels étudiants appartiennent à chaque classe et vice versa.

Requête de données associées

Ces relations permettent des requêtes efficaces. Par exemple :

  • Récupérer tous les étudiants d'un cours spécifique : SELECT * FROM student planning WHERE course ID = X ;
  • Obtenir tous les cours inscrits par un étudiant spécifique : SELECT * FROM programme de cours de l'étudiant WHERE ID étudiant = Y ;

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!

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