Maison  >  Article  >  base de données  >  Qu’est-ce que le code chinois et étranger MySQL ?

Qu’est-ce que le code chinois et étranger MySQL ?

下次还敢
下次还敢original
2024-04-29 03:18:15293parcourir

Le code étranger est une contrainte d'intégrité des données dans MySQL, qui garantit que les données de la sous-table sont cohérentes avec la table principale en faisant référence à la colonne de clé primaire de la table principale. Le principe de fonctionnement du code étranger est le suivant : s'assurer que les données de la table principale référencées par la sous-table existent. Suppression en cascade : Lorsque l'enregistrement de la table principale est supprimé, les enregistrements associés de la sous-table sont supprimés en cascade. Mise à jour en cascade : lorsque la clé primaire de la table principale est mise à jour, les enregistrements associés de la sous-table sont mis à jour en cascade.

Qu’est-ce que le code chinois et étranger MySQL ?

Que sont les codes étrangers dans MySQL ?

Foreign Key est une contrainte d'intégrité des données dans MySQL, utilisée pour garantir que les lignes entre différentes tables ont des relations valides et cohérentes. Pour ce faire, il fait référence à une colonne de clé primaire dans une autre table (la table principale).

Comment fonctionne le code étranger ?

Lorsqu'une clé étrangère est créée dans une table enfant, elle fait référence à la colonne de clé primaire de la table principale. Lors de l'insertion d'un enregistrement dans la table enfant, la valeur de la colonne de clé étrangère doit correspondre à la valeur de clé primaire existante dans la table principale.

  • Intégrité : Les contraintes de code étranger garantissent que les données référencées dans la table enfant existent toujours dans la table principale.
  • Suppression en cascade : Lorsqu'un enregistrement de la table principale est supprimé, tous les enregistrements associés de la sous-table peuvent être supprimés en cascade, maintenant ainsi l'intégrité de la relation entre les tables.
  • Mise à jour en cascade : Lorsque la valeur de la clé primaire dans la table principale est mise à jour, tous les enregistrements associés dans la table enfant peuvent être mis à jour en cascade pour maintenir la cohérence.

Créer une clé étrangère

Utilisez la syntaxe suivante pour créer une clé étrangère :

<code class="sql">ALTER TABLE 子表
ADD FOREIGN KEY (外码列) REFERENCES 主表(主键列);</code>

Exemple

Supposons que nous ayons deux tables : Commande et Détails de la commande code> . La table Order Details a une clé étrangère order_id, qui fait référence à la clé primaire id dans la table Order. 订单订单明细订单明细表有一个外码 order_id,它引用 订单表中的主键 id

<code class="sql">CREATE TABLE 订单 (
  id INT PRIMARY KEY,
  客户名称 VARCHAR(255)
);

CREATE TABLE 订单明细 (
  id INT PRIMARY KEY,
  order_id INT,
  产品名称 VARCHAR(255),
  数量 INT,
  FOREIGN KEY (order_id) REFERENCES 订单(id)
);</code>

当向 订单明细表插入记录时,order_id 必须对应于 订单表中的现有 idrrreee

Lors de l'insertion d'un enregistrement dans la table Order Details, le order_id doit correspondre à un id existant dans la Order. code> table> valeur. Cela garantit que les détails de la commande sont toujours associés à une commande valide. 🎜

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