MS Access - Données relatives

Dans ce chapitre, nous comprendrons les bases de la relation entre les données. Avant de parler et de créer des relations entre différentes données, examinons pourquoi nous en avons besoin. Tout revient à la normalisation.

Normalisation

La normalisation de la base de données, ou simplement la normalisation, est le processus d'organisation des colonnes (attributs) et des tables (relations) d'une base de données relationnelle pour minimiser la redondance des données. Il s'agit du processus de fractionnement des données sur plusieurs tables pour améliorer les performances globales, l'intégrité et la longévité.

  • La normalisation est le processus d'organisation des données dans une base de données.

  • Cela inclut la création de tables et l'établissement de relations entre ces tables selon des règles conçues à la fois pour protéger les données et pour rendre la base de données plus flexible en éliminant la redondance et les dépendances incohérentes.

Examinons maintenant le tableau suivant qui contient des données, mais le problème est que ces données sont assez redondantes, ce qui augmente les risques de faute de frappe et de formulation incohérente lors de la saisie des données.

CustID Nom Adresse Biscuit Quantité Prix Total
1 Ethel Smith 12 Main St, Arlington, VA 22201 S Pépite de chocolat 5 2,00 $ 10,00 $
2 Tom Wilber 1234 Oak Dr., Pékin, IL 61555 Choc Chip 3 2,00 $ 6,00 $
3 Ethil Smithy 12 Main St., Arlington, VA 22201 Pépite de chocolat 5 2,00 $ 10,00 $

Pour résoudre ce problème, nous devons restructurer nos données et les décomposer en plusieurs tables pour éliminer certaines de ces redondances, comme indiqué dans les trois tableaux suivants.

Ici, nous avons une table pour les clients, le 2 e une est pour les commandes et le 3 e un est pour les cookies.

Le problème ici est que le simple fait de fractionner les données dans plusieurs tables n'aidera pas à déterminer comment les données d'une table sont liées aux données d'une autre table. Pour connecter des données dans plusieurs tables, nous devons ajouter des clés étrangères auOrders table.

Définition des relations

Une relation fonctionne en faisant correspondre les données dans les colonnes clés, généralement des colonnes portant le même nom dans les deux tables. Dans la plupart des cas, la relation correspond à la clé primaire d'une table, qui fournit un identificateur unique pour chaque ligne, avec une entrée dans la clé étrangère dans l'autre table. Il existe trois types de relations entre les tables. Le type de relation créé dépend de la manière dont les colonnes associées sont définies.

Examinons maintenant les trois types de relations -

Relations un-à-plusieurs

Une relation un-à-plusieurs est le type de relation le plus courant. Dans ce type de relation, une ligne de la table A peut avoir plusieurs lignes correspondantes dans la table B, mais une ligne de la table B ne peut avoir qu'une seule ligne correspondante dans la table A.

Par exemple, les tables Clients et Commandes ont une relation un-à-plusieurs: chaque client peut passer plusieurs commandes, mais chaque commande provient d'un seul client.

Relations plusieurs-à-plusieurs

Dans une relation plusieurs à plusieurs, une ligne de la table A peut avoir plusieurs lignes correspondantes dans la table B, et vice versa.

Vous créez une telle relation en définissant une troisième table, appelée junction table, dont la clé primaire est constituée des clés étrangères de la table A et de la table B.

Par exemple, la table Clients et la table Cookies ont une relation plusieurs-à-plusieurs qui est définie par une relation un-à-plusieurs entre chacune de ces tables et la table Commandes.

Relations un à un

Dans une relation un à un, une ligne de la table A ne peut avoir plus d'une ligne correspondante dans la table B, et vice versa. Une relation un-à-un est créée si les deux colonnes associées sont des clés primaires ou ont des contraintes uniques.

Ce type de relation n'est pas courant car la plupart des informations liées de cette manière seraient toutes dans un seul tableau. Vous pouvez utiliser une relation un-à-un pour -

  • Divisez un tableau en plusieurs colonnes.
  • Isolez une partie d'une table pour des raisons de sécurité.
  • Stockez des données de courte durée pouvant être facilement supprimées en supprimant simplement la table.
  • Stockez les informations qui s'appliquent uniquement à un sous-ensemble de la table principale.