MySQLLe but des clés étrangères est de contrôler le stockage dans tables de clés étrangères Les données relient les deux tables. C'est une partie très importante de la base de données MySQL et mérite notre compréhension approfondie. Alors, MySQLQuel rôle jouent les clés étrangères ? Ce qui suit vous amènera à explorer les secrets.
Maintenir la cohérence et l'intégrité des données L'objectif principal est de contrôler les données stockées dans la table de clés étrangères. Pour associer deux tables, les clés étrangères ne peuvent référencer que les valeurs des colonnes de la table !
a b Deux tables
aLa table contient le numéro de client et le nom du client
bLa commande de chaque client est stockée dans le tableau
Avec la clé étrangère, vous ne pouvez confirmer que b
(La clé étrangère doit être la clé primaire de la clé étrangère clé).
Précisez le mot-clé de la clé primaire :clé étrangère(Nom de la colonne)
Citez le mot-clé de la clé étrangère :références <Nom de la table de clé étrangère>(Nom de la colonne de clé étrangère)
Restrictions de déclenchement d'événements lors de la suppressionet lors de la mise à jour, peut définir des paramètrescascade(suit en dehors des changements de clé), restreindre(Limiter les modifications de clé étrangère dans la table), définir Null(Définir la valeur nulle) , définir la valeur par défaut(définir la valeur par défaut),[par défaut]aucune action
exempleclé primaire de la table id type int
Créer une table avec des clés étrangères :create table temp( id int, name char(20), foreign key(id) references outTable(id) on delete cascade on update cascade);
id sur MySQL clé étrangère, reportez-vous à la colonne id de la tableoutTable. Lorsque la valeur de la clé étrangère est supprimée, la colonne correspondante dans ce tableau est supprimée Lorsque la valeur de la clé étrangère change, la valeur de la colonne correspondante dans ce tableau change.
Remarque Dans MySQLune table ne peut avoir qu'une seule clé primaire, et la clé primaire peut être composée de plusieurs champs.
Ce qui précède est le rôle des clés étrangères MySQL Advanced (11) dans la base de données Contenu, veuillez faire attention au site Web PHP chinois (www.php.cn) pour plus de contenu connexe !