Aller au contenu
uencoder

Foreign Key

Une clé étrangère est une colonne qui référence la clé primaire d'une autre table, établissant l'intégrité référentielle entre tables et empêchant les références orphelines.

Objectif

Garantir l'intégrité référentielle, maintenir la cohérence des données liées et empêcher les références à des lignes inexistantes.

Mécanisme

FOREIGN KEY (col) REFERENCES other(id). Contrainte : les valeurs de clé étrangère insérées/modifiées doivent exister dans la clé primaire référencée (ou être NULL). Un ON DELETE CASCADE/SET NULL facultatif définit le comportement en cascade. Les clés étrangères exigent des index pour accélérer les contrôles de contrainte et les JOIN.

Cas d’usage

  • Intégrité référentielle entre tables
  • Suppression/mise à jour en cascade
  • Mapping de relations ORM
  • Contraintes de cohérence des données

Exemples

  • entrée
    FOREIGN KEY (user_id) REFERENCES users(id)
    Output
    Referential integrity constraint

    Foreign key

Erreurs courantes

Unindexed foreign keys lock tables during cascades
Create an index on the foreign key column

Termes associés

References