Partager via


Types de relations entre tables

Une relation fait correspondre des données de colonnes clés — généralement des colonnes portant le même nom dans les deux tables. Dans la plupart des cas, la relation établit une correspondance entre la clé primaire d'une table, qui fournit un identificateur unique pour chaque ligne, et l'entrée contenue dans la clé étrangère de l'autre table. Par exemple, pour associer des ventes de livres à des titres spécifiques, vous pouvez créer une relation entre la colonne title_id de la table titles (clé primaire) et la colonne title_id de la table sales (clé étrangère).

Il existe trois types de relations entre tables. Le type de relation créé dépend de la façon dont les colonnes en relation sont définies.

Notes

Une nouvelle version du concepteur de tables s'affiche pour les bases de données dans le format SQL Server 2012. Cette rubrique décrit l'ancienne version du Concepteur de tables que vous utilisez avec des bases de données aux formats antérieurs de SQL Server.

Dans la nouvelle version, vous pouvez modifier une définition de table via une interface graphique ou directement dans un volet script. Si vous voulez utiliser l'interface graphique, la définition de tables est automatiquement mise à jour dans le volet script. Pour appliquer le code SQL dans le volet script, choisissez le bouton Mettre à jour. Pour plus d'informations sur la nouvelle version, consultez How to: Create Database Objects Using Table Designer.

Relations un-à-plusieurs

Ce type de relation est le plus courant. Dans ce type de relation, une ligne dans la table A peut avoir de nombreuses lignes correspondantes dans la table B, mais une ligne dans la table B peut avoir une seule ligne correspondante dans la table A. Par exemple, les tables titles et publishers ont une relation un-à-plusieurs : chaque éditeur produit de nombreux titres, mais chaque titre provient d'un seul éditeur.

Ne créez une relation de type un-à-plusieurs que si l'une des colonnes en relation est une clé primaire ou doit respecter une contrainte unique.

Le côté clé primaire d'une relation de type un-à-plusieurs est illustré par le symbole d'une clé. Le côté clé étrangère d'une relation de type un-à-plusieurs est illustré par le symbole Infini.

Relations plusieurs-à-plusieurs

Dans ce type de relation, une ligne de la table A peut correspondre à plusieurs lignes de la table B et vice versa. Vous créez cette relation en définissant une troisième table, appelée une table de jointure, dont la clé primaire se compose des clés étrangères des tables A et tables B. Par exemple, la table authors et la table titles ont une relation plusieurs à plusieurs définie par une relation un-à-plusieurs dans chacune de ces tables à la table titleauthors. La clé primaire de la table titleauthors est une combinaison des colonnes au_id (clé primaire de la table authors) et title_id (clé primaire de la table titles).

Relations un-à-un

Dans ce type de relation, une ligne de la table A ne peut correspondre qu'à une seule ligne de la table B et vice versa. Une relation de type un-à-un est créée si les deux colonnes en relation sont des clés primaires ou doivent respecter des contraintes uniques.

Ce type de relation n'est pas courant, la plupart des informations mises en relation de cette façon se trouvant dans une seule et même table. Une relation un-à-un est utile pour :

  • Diviser une table comportant trop de colonnes.

  • Isoler une partie d'une table pour des raisons de sécurité.

  • Stocker des données à courte durée de vie, qui seront faciles à supprimer par une simple suppression de la table.

  • Stocker des informations ne s'appliquant qu'à un sous-ensemble de la table principale.

Le côté clé primaire d'une relation de type un-à-un est illustré par le symbole d'une clé. Le côté clé étrangère est aussi illustré par le symbole d'une clé.

Voir aussi

Concepts

Vue d'ensemble de l'intégrité référentielle

Autres ressources

Utilisation des relations

Utilisation des clés