Maison > base de données > tutoriel mysql > le corps du texte

Utiliser des clés étrangères dans MySQL

王林
Libérer: 2023-08-31 11:37:02
avant
1341 Les gens l'ont consulté

在 MySQL 中使用外键

Comprenons comment utiliser les clés étrangères dans MySQL −

Les tables InnoDB prennent en charge la vérification des contraintes de clé étrangère. Aucune contrainte de clé étrangère n'est requise pour joindre les deux tables. Il peut être utilisé lors de la définition des colonnes à utiliser, pour les moteurs de stockage autres qu'InnoDB. REFERENCES tableName(colName) n'a aucun effet pratique autre que d'annoter à l'utilisateur que la colonne en cours de définition est destinée à référencer une colonne dans une table différente.

MySQL ne vérifie pas que 'colName' existe réellement dans 'tableName', ou que 'tableName' lui-même existe réellement.

Dans la table parent, la clé étrangère fera office de clé primaire. Voyons un exemple de création d'un tableau.

Créer une table enfant

mysql> create table StudentEnrollment
−> (
   −> StudentId int,
   −> StudentName varchar(200),
   −> StudentFKPK int
−> );
Query OK, 0 rows affected (0.91 sec)

Copier après la connexion

Créer une table parent

mysql> create table College
−> (
   −> StudentFKPK int,
   −> CourseId int,
   −> CourseName varchar(200),
   −> CollegeName varchar(200),
   −> primary key(StudentFKPK)
−> );
Query OK, 0 rows affected (0.46 sec)
Copier après la connexion

Dans la table parent, la colonne « StudentFKPK » est une clé primaire. Nous utiliserons la commande ALTER pour ajouter une clé étrangère.

Voici la syntaxe pour ajouter des clés étrangères.

Syntaxe

ALTER table yourChildTableName add constraint anyConstraintName
foreign key(primary key column name for parent table)
references College(primary key column name for parent table);
Copier après la connexion

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:tutorialspoint.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal