Discussion:Clé étrangère

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Une page de Wikipédia, l'encyclopédie libre.
Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons


Le terme "de type clé primaire" me choque. Suis je seul ?

Oui, je suis d'accord, une clé étrangère n'est pas forcément (et même rarement) une clé primaire... en fait, une clé primaire est une contrainte qui garantie l'unicité des valeurs d'une colonne dans une table. Cette colonne peut donc être utilisée pour identifier de manière unique chaque ligne de la table.
Une clé étrangère est une contrainte qui garantie que chaque valeur d'une colonne d'une référence une ligne valide dans une table donnée (la table étrangère), la relation se faisant sur la clé primaire définie sur la table étrangère.
Par exemple, on a une table fonction avec les colonnes id (numérique et clé primaire) et nom_fonction, et une table personne avec les colonnes id (numérique et clé primaire), nom, prenom et id_fonction. La colonne id_fonction est la valeur de l'id de la table fonction de la fonction de chaque personne (c'est une référence vers la fonction de la personne). Pour garantir que la valeur existe vraiment (donc garantir qu'on ne peut pas avoir de valeur id_fonction non existante dans la colonne id de la table fonction) on va définir une clé étrangère sur cette colonne, en spécifiant que la référence se fait sur la colonne id de la table fonction.
La clé étrangère est un des socles fondammentaux des bases de données relationnelles.
--Funkygono 4 juillet 2007 à 22:43 (CEST)[répondre]