Maison  >  Article  >  base de données  >  Explication graphique et textuelle détaillée de l'apprentissage des clés étrangères MySQL

Explication graphique et textuelle détaillée de l'apprentissage des clés étrangères MySQL

黄舟
黄舟original
2017-09-08 14:04:171771parcourir

1. Par exemple, il existe deux tables « table de catégories » et « table de produits ». Afin d'indiquer à quelle catégorie appartient le produit, nous ajouterons généralement une colonne à la table de produits pour stocker les informations de classification. Cette colonne s'appelle : clé étrangère.

À l'heure actuelle, la table de classificationcategory est appelée table principale, cid est appelée clé primaire ; la table product products est appelée table esclave etcategory_id est appelée table esclave ; la clé étrangère.

Caractéristiques des clés étrangères : 1) La valeur de la clé étrangère dans la table secondaire est une référence à la clé primaire de la table primaire

2) Le type de clé étrangère dans la La table secondaire doit être cohérente avec la clé primaire de la table primaire.

Le but de l'utilisation de clés étrangères : garantir l'intégrité des données

2. Créez d'abord une base de données web09 dans l'invite de commande et créez deux tables catégorie et produit. Les instructions sont les suivantes :

Insérez respectivement plusieurs éléments de données

eg.insert into category(cid,cname) values('c001','家电');
insert into product(pid,pname,price,category_id) values('p001','联想','5000','c001');

comme indiqué ci-dessous :

3. Déclarer les contraintes de clé étrangère

Syntaxe : modifier la table ajouter [contrainte] [nom de clé étrangère] de la table clé étrangère (nom du champ de clé étrangère de la table) fait référence à la table principale (clé primaire de la table principale) ;

[nom de la clé étrangère] est utilisé pour supprimer les contraintes de clé étrangère. Il est généralement recommandé de terminer par "_fk"

Après. la déclaration de contrainte, si je veux supprimer la catégorie Les données avec cid=c003 dans le tableau ne peuvent pas être supprimées

4. Libérer la contrainte

Syntaxe : modifier la table supprimer la clé étrangère du nom de la clé étrangère de la table

Continuer à supprimer les données de cid=c003 dans la table des catégories, vous pouvez supprimer

Remarque : les clés étrangères de la table ne peuvent pas être ajoutées à la table principale. Les enregistrements qui n'existent pas dans

La table principale ne peut pas supprimer les enregistrements qui ont été référencés dans la table esclave.

5. Principe de création de table un à plusieurs :

Principe de création de table plusieurs à plusieurs :

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