Maison  >  Article  >  base de données  >  Comment ajouter une commande de contrainte de clé étrangère dans Navicat

Comment ajouter une commande de contrainte de clé étrangère dans Navicat

下次还敢
下次还敢original
2024-04-24 00:33:20568parcourir

Utilisez les commandes SQL dans Navicat pour ajouter des contraintes de clé étrangère afin d'assurer la cohérence des données : Structure de commande : ALTER TABLE child_table ADD FOREIGN KEY (child_column) REFERENCES parent_table (parent_column) [ON DELETE action] [ON UPDATE action] Explication du paramètre : child_table : child table; child_column : la colonne de la table enfant qui fait référence à la colonne de la table parent ; parent_table : la table parent ; parent_column : la table parent est référencée

Comment ajouter une commande de contrainte de clé étrangère dans Navicat

Ajouter une commande de contrainte de clé étrangère dans Navicat

Ajoutez une contrainte de clé étrangère dans Navicat, qui peut garantir la cohérence et l'intégrité des données. Voici comment ajouter des contraintes de clé étrangère dans Navicat à l'aide de commandes SQL :

Structure de commande :

<code class="sql">ALTER TABLE child_table
ADD FOREIGN KEY (child_column)
REFERENCES parent_table (parent_column)
[ON DELETE action]
[ON UPDATE action];</code>

Explication du paramètre :

  • child_table : La table enfant à laquelle les contraintes de clé étrangère doivent être ajoutées.
  • child_column : Colonne de la table enfant qui fait référence à la colonne de la table parent.
  • parent_table : La table parent contenant la colonne référencée.
  • parent_column : La colonne référencée dans la table parent.
  • Action ON DELETE : Facultatif, spécifie l'action à effectuer sur les enregistrements associés dans la table enfant lorsqu'un enregistrement dans la table parent est supprimé. Les valeurs possibles incluent :

    • CASCADE : supprime automatiquement les enregistrements associés dans la table enfant.
    • SET NULL : définissez la colonne de clé étrangère de l'enregistrement associé dans la table enfant sur NULL.
    • RESTRICT : empêchez la suppression d'enregistrements dans la table parent si cela affecte les enregistrements associés dans la table enfant.
  • Action ON UPDATE : Facultatif, spécifie l'opération à effectuer sur les enregistrements associés dans la table enfant lorsqu'un enregistrement dans la table parent est mis à jour. Les valeurs possibles incluent :

    • CASCADE : mettre à jour automatiquement les colonnes de clé étrangère pour les enregistrements associés dans une table enfant.
    • SET NULL : définissez la colonne de clé étrangère de l'enregistrement associé dans la table enfant sur NULL.
    • RESTRICT : empêche la mise à jour des enregistrements dans la table parent si cela affecterait les enregistrements associés dans la table enfant.

Exemple :

La commande suivante ajoute une contrainte de clé étrangère dans la table enfant nommée "orders" qui fait référence à la colonne "customer_id" dans la table parent nommée "customers" :

<code class="sql">ALTER TABLE orders
ADD FOREIGN KEY (customer_id)
REFERENCES customers (customer_id)
ON DELETE CASCADE
ON UPDATE CASCADE;</code>

Conseil :

  • Avant d'exécuter la commande pour ajouter des contraintes de clé étrangère, assurez-vous que la table parent et la table enfant existent.
  • Si des données existent déjà dans la table enfant, utilisez les opérations ON DELETE et ON UPDATE correctes pour éviter la perte de données.
  • Vous pouvez exécuter ces commandes dans l'éditeur SQL de Navicat ou utiliser l'interface graphique en cliquant avec le bouton droit sur la table et en sélectionnant "Alter Table" dans le menu.

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