Maison >Problème commun >Qu'est-ce qu'une clé étrangère

Qu'est-ce qu'une clé étrangère

王林
王林original
2020-11-26 14:35:158382parcourir

Les clés étrangères sont des mots-clés. Si une clé commune est la clé primaire d'une relation, alors la clé commune est appelée la clé étrangère d'une autre relation. Les clés étrangères représentent le lien pertinent entre deux relations. Les clés étrangères peuvent maintenir la cohérence et l'intégrité des données, et leur objectif principal est de contrôler les données stockées dans la table de clés étrangères.

Qu'est-ce qu'une clé étrangère

Introduction à la clé étrangère :

Si la clé publique est la clé primaire dans une relation, alors cette clé publique est appelée une clé étrangère vers une autre relation. On voit que les clés étrangères représentent les liens pertinents entre deux relations. La table avec la clé étrangère d'une autre relation comme clé primaire est appelée table maître, et la table avec la clé étrangère est appelée table esclave de la table maître. Les clés étrangères sont également appelées mots-clés étrangers.

(Partage vidéo d'apprentissage : tutoriel vidéo mysql )

Fonction :

Maintenir la cohérence et l'intégrité des données, l'objectif principal est de contrôler le stockage des données de clés étrangères dans le tableau. Pour associer deux tables, la clé étrangère ne peut faire référence qu'aux valeurs des colonnes de la table ou utiliser des valeurs nulles.

Empêcher l'exécution

  • Insérez une nouvelle ligne de la table, et sa valeur de clé étrangère n'est pas la valeur de clé primaire de la table principale, ce qui empêche l'insertion

  • Modifiez la valeur de la clé étrangère de la table esclave. Si la nouvelle valeur n'est pas la valeur de la clé primaire de la table maître, la modification sera bloquée

  • Supprimez la ligne de la table maître et sa valeur de clé primaire existera dans la table esclave. Empêchez la suppression (si vous souhaitez supprimer, vous devez d'abord supprimer les lignes pertinentes de la table esclave
  • La table maître modifie la valeur de la clé primaire, et l'ancienne valeur existe dans la table esclave pour empêcher la modification (si vous souhaitez modifier, les lignes pertinentes de la table doivent d'abord être supprimées).
  • Exécution en cascade

Supprimer les lignes de la table principale et supprimer ensemble les lignes associées de la table
  • Modifiez la valeur de clé primaire de la table principale et modifiez ensemble la valeur de clé étrangère des lignes associées dans la table esclave. Deux méthodes sont proposées aux utilisateurs. Quelle que soit la méthode choisie, il n’y aura aucune ligne supplémentaire dans le tableau. D'un autre point de vue, la même chose est obtenue en rejetant l'incohérence entre les indicateurs de la table esclave et de la table maître pour obtenir une cohérence avec les indicateurs de la table maître.
  • Recommandations associées :
  • Tutoriel MySQL

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:
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