Page d'Accueil

Introduction aux relations

 

Vue d'ensemble des relations

 

Introduction

 
Introduction to Relationships

La saisie de données comme nous l'avons exécutée jusqu'ici a consisté à dactylographier une valeur nécessaire dans chaque champ. Puisqu'une base de données régulière est faite de multiples tables, ces objets travaillent ensemble pour créer un produit aussi complet et efficace que possible. Puisqu'il peut avoir beaucoup d'objets, une des règles qu'un réalisateur d'une base de données devrait observer est d'éviter l'entrée de doubles données.

En d'autres termes, la même information ne devrait pas être écrite dans deux objets différents. Par exemple, quand une personne ouvre un compte bancaire dans une banque, l'agent de la banque écrit l'information du client dans un objet tel qu'un formulaire ou une table:

Customer Table Illustration

Quand le même client revient pour une transaction, par exemple déposer de l'argent, ses coordonnées ne devraient pas être enregistrées à nouveau mais elles devraient être disponibles dans le formulaire utilisé pour effectuer ses transactions:

Field Relationship Illustration

C'est la base de la base de données relationnelle. Une base de données relationnelle est basée sur le principe selon lequel les objets d'une base de données doivent être reliés entre eux, de manière à pouvoir échanger des informations. Quand ceci est fait, des relations sont créées entre les objets d'une base de données.

La clé primaire

The Primary Key

Si vous étiez invité à créer une base de données d'une banque comme illustration le principe ci-dessus, le formulaire a utiliser quand un client veut faire un dépôt devrait probablement contenir des informations comme le nom du client, son numéro de compte bancaire, la date de la transaction, et le montant du dépôt. Peut être vous créeriez le formulaire comme suit :

Dépôt d'argent du client

Nom de client
Numéro de compte bancaire
Date de la transaction
Montant du dépôt

Basé sur ceci, l'agent de banque peut simplement dactylographier le nom du client et effectuer la transaction. Quand le même client revient pour un autre type de transaction tel que le retrait ou le transfert d'argent, l'agent de banque utiliserait un autre formulaire et écrirait le nom du client. La probabilité de dactylographier le nom du client différemment sur les différents formulaires est vraiment élevée. Par exemple en exécutant un dépôt, l'agent peut écrire le nom du client comme Josiane Tobolowski. Dans un formulaire utilisé pour retirer l'argent, il peut écrire le nom du client comme Jozian Toblowsky. Évidemment, ce sont deux noms complètement différents. Pour éviter ce type d'erreur, la solution est de créer un objet (table) qui contiendrait le nom du client et rendrait ce nom disponible à d'autres objets impliqués dans les transactions. La table qui va contenir les informations du client peut avoir les champs suivants :

Informations sur le client
Nom et prénoms
Numéro de compte
Adresse
Numéro de téléphone
Adresse e-mail

Lorsque le client a besoin d'effectuer une transaction, l'agent de banque peut simplement sélectionner le nom du client dans un formulaire et continuer la transaction. Pour cela, il doit y avoir une relation entre la table qui contient les informations sur le client et la table dans laquelle la transaction est effectuée :

Information sur le client Dépôt d'argent du client
Nom et prénoms
Numéro de compte
Adresse
Numéro de téléphone
Adresse e-mail
Double Fleche
Nom du client
Compte bancaire
Date Transaction 
Montant du dépôt

En créant ce type de relation, vous penseriez que, bien que les informations du client soient dans divers objets de la base de données, ces différents objets peuvent avoir besoin des  informations différentes. Par exemple, en effectuant un dépôt d'argent, l'agent aura besoin du numéro du compte du client et de son nom. Si le client vient demander des bulletins à la banque, quand un autre agent prépare ces bulletins pour ce client, il aura besoin de son nom et de l'adresse e-mail mais non de son numéro de compte. Pour cette raison, la base de données relationnelle vous permet de créer un champ spécial dans la table qui contient les informations du client. Ce champ sera utilisé pour communiquer avec d'autres objets de la base de données et pour leur fournir l'information dont ils ont besoin au sujet du client. Le nom de ce champ commence habituellement par le numéro de compte ou le nom du client. Puisque ce champ contient une marque, il finit parfois avec l'identification. La table qui contient les informations d'un client peut devenir :

Informations du client
Nom et prénoms
Numéro de compte
Adresse
Numéro de téléphone
Adresse e-mail
Identification du client

Dans les objets qui ont besoin des informations contenues dans la table des informations du client, vous devez créer un champ qui contiendrait une relation. Par exemple, vous pouvez créer un tel champ sur la table utilisé pour les dépôts d'argent. Ce champ n'appartient pas directement à la table : il agit comme « ambassadeur ». Pour cette raison, il s'appelle une clé étrangère. Puisqu'un tel champ appartient à la table de départ, il devrait avoir le même nom que l'identité de la table original. D'autre part, l'identité de ce champ sera utilisée pour contrôler la relation entre sa table et ces tables qui ont besoin des informations stockées dans sa table. Cela s'appelle une clé primaire. Après avoir créé ces deux champs, ils sont utilisés « pour lier » les deux tables:

Information sur le client  dépôt d'argent du client
Nom et prénoms
Numéro de compte
Adresse
Numéro de téléphone 
Adresse Email 
ID Client
Fleche
Nom du client
Compte Bancaire
Date Transaction 
Montant du dépôt
ID Client 

Bien que dans cet exemple de table des informations sur le client, nous ayons illustré seulement un champ comme clé primaire, vous pouvez utiliser plus d'un champ comme clé primaire.

Dans ce scénario, ce dont vous avez besoin dans la zone de tri de la clé primaire, c'est de maintenir l'échange d'information entre sa table et les tables qui lui sont liés. Dans la plupart des circonstances, vous n'aurez pas besoin d'écrire les informations dans la zone de tri de la clé primaire. Pour cette raison, vous pouvez demander à Microsoft Access de fournir automatiquement un numéro au champ. A cet effet, vous pouvez définir le type de données de ce champ à NuméroAuto.

Il y a trois principales manières d'obtenir une clé primaire dans une table. Si vous créez une table en utilisant l'assistant, il vous sera demandé si vous voulez que  Microsoft Access vous assigne une clé primaire. Si vous créez une table en mode création, vous pouvez cliquer le bouton principal de la clé primaire sur la barre d'outils. Tandis que le champ indiqué est sélectionné, vous pouvez également cliquer édition - > clé primaire du menu principal. Si vous essayez de sauvegarder une table créée en mode feuille de données, puisque vous n'aurez pas défini une clé primaire, vous serez incité à le faire. 

Etude Pratique Étude pratique : Présentation des relations

  1. Commencez Microsoft Access et créez une base de données vide.
  2. Écrivez collection Vidéo comme nom de la base de données et cliquez Créer.
  3. Pour créer votre nouvelle table, dans la section Tables, cliquez le bouton Nouveau.
  4. Dans la zone de dialogue Nouvelle Table, cliquez Mode création, et cliquez OK.
  5. Placez le nom du premier champ à IDActeur et placez son type de données à NuméroAuto.
  6. Pendant que le champ est toujours sélectionné, sur la barre d'outils du mode création Table, cliquez le bouton Clé primaire
  7. Placez sa légende à identification de l'acteur. 
  8. Dans la section supérieure de la table, sous IDActeur, donnez le nom Acteur au deuxième champ et son type de données est Texte.
  9. Placez la légende du champ Acteur à Acteur/Actrice. 
  10. Définissez le dernier champ comme Remarques et son type de données à Mémo.
     
  11. Pour muter la table en un autre affichage, sur la barre d'outils du mode création de Table, cliquez le bouton Affichage.
  12. S'il vous est demandé si vous voulez sauvegarder la table, cliquez oui. 
  13. Dactylographiez Acteurs et cliquez OK. 
  14. Dactylographiez les noms des acteurs suivants :
     
    ActorID Acteur
    Eddie Murphy
    Michael Douglas
     Glenn Close
    Bruce Willis
    Isaac de Bankole
    Jack Nicholson
    Laura Linney
    Demi Moore
    Tom Cruise
    Djimon Hounsou
    Anne Archer 
    Bonnie Bedelia
    Tom Selleck
    Paulina Porizkova
    Lane Smith
  15. Fermez la table.
  16. Créer une nouvelle table mode création avec les champs suivants :
     
    Nom de champ Type de données Description
    IDDirecteur
    (Clef primaire)
    NuméroAuto Numéro automatique
    Directeur Texte Nom d'un directeur tel que « Mark Lynn » ou directeurs en tant que groupe comme « Hughes Brothers »
    Remarques Mémo Observations au sujet du directeur ou du groupe de directeurs
  17. Sauvegardez la table sous le nom Directeurs et la muter en mode feuille de données.
  18. Présentez quelques directeurs comme suit :
     
    IDDirecteur Directeur
    Renny Harlin
    Scott élégant
    Tim Burton
    Eddie Murphy
    Rob Reiner
    Jonathan Lynn
    spike Lee
    Steven Spielberg
  19. Créer une nouvelle table en mode création avec les champs suivants :
     
    Nom de champ Type de données Légende
    IDCatégorieVidéo
    (Clef primaire)
    NuméroAuto Identification de la catégorie des vidéos
    CatégorieVidéo  Texte Catégorie vidéo
    Remarques Mémo
  20. Sauvegardez la table sous le nom CatégoriesVidéo et la muter en mode feuille de données
  21. Écrire quelques catégories dans la table :
     
    Identification catégorie vidéo Catégorie vidéo
    Biographie
    Documentaire
    Fitness - aérobic
    Comédie - général
    Comédie - police
    Comédie - politique
    Comédie - guerre
    Drame - général
    Drame - police
    Drame - politique
    Drame - guerre
    Sci-Fi - Généralités
    Sci-Fi - Comédie
    Sci-Fi - Police
    Sci-Fi - Politique
    Sci-Fi - Guerre
    Dessin animé
  22. Fermez la table.
  23. Créez une nouvelle table en mode création avec les champs suivants :
     
    Nom de champ Type de données Légende Taille de champ
    IDVidéo
    (Clef primaire)
    NuméroAuto Identification de vidéo
    Titre Texte 120
    AnnéeCopyright Numérique Année de © Nombre entier
    Longueur Texte 20
    Remarques mémo

    (Pour obtenir le caractère de ©, vous pouvez ouvrir Microsoft Word, taper (c) puis sélectionner et le copier. Le coller alors dans la propriété légende du champ de la table)

  24. Sauvegardez la table comme Vidéos et la muter en mode feuille de données. 
  25. Entrez y quelques vidéos :
     
    Titre Année de © Longueur
    A Few Good Men 1993 138 minutes
    The Last Boy Scout 1991 105 minutes
    The Distinguished Gentleman 112 minutes
    Batman 1989 126 minutes
    Die Hard 2 – Die Harder 1990 124 minutes
    Beverly Hills Cop II 1987 103 minutes
    Her Alibi 1998 94 minutes
  26. Sauvegardez la table

Les champs de recherche

 

Les champs de recherche indépendants

Les champs que nous avons créés jusqu'ici étaient des boîtes de textes classiques qui permettent simplement à l'utilisateur de dactylographier pour créer une valeur. Au lieu de laisser l'utilisateur dactylographier les valeurs d'un champ, si vous voulez, vous pouvez établir une liste des valeurs qui sont valides pour un certain champ. Ceci permettrait à l'utilisateur de sélectionner simplement dans cette liste. Un tel champ s'appelle le champ de recherche.

Le type de champ de consultation le plus simple consiste à créer une liste dont vous connaissez les articles et qui vous aide à créer la base de données. Par exemple, un agent doit indiquer le genre de personnes dont il a créé les enregistrements, puisqu'il y a seulement deux genres dans la liste que vous pouvez créer.

Il s'agit seulement de la liste pour  les articles; Masculin et Féminin. Puisqu'il n'y aurait pas de soupçon d'une autre valeur, vous pouvez sans risque créer une telle liste. La liste de consultation est fournie par une boîte bascule. Pour définir ou changer une valeur dans le champ, l'utilisateur peut déployer la boîte bascule et sélectionner un article. L'article sélectionné est stocké dans le champ et est stocké comme chaîne (comme texte).

Il y a trois principales façons de créer un simple champ de recherche :

  • En Mode feuille de données, créez ou sélectionnez un champ dont la valeur devrait être sélectionnée dans une liste. Puis, sur le menu principal, cliquez Insertion - > Colonne de recherche…
  • En Mode feuille de données, créez ou sélectionnez un champ dont la valeur devrait être sélectionnée dans une liste. Alors droit-cliquez l'en-tête de la colonne et cliquez Colonne de recherche.
  • En Mode création, localisez le champ dont les valeurs devraient être sélectionnées dans la liste et définissez son type de données à Assistant Liste de choix.

N'importe laquelle de ces actions lancerait l'assistant Liste de choix. Puisque dans ce cas-ci vous créerez une liste connue, vous devrez sélectionner le deuxième bouton station et procéder.

Etude Pratique Étude pratique : Réglage de la liste préréglée d'articles

  1. La table Vidéos de la base de données Collection Vidéo devrait encore être ouverte.
    Droit-cliquez l'en-tête de la colonne Longueur et cliquez Colonne de recherche…
  2. Dans la première page de l'assistant Liste de choix, cliquez le deuxième bouton station.
     
  3. Cliquez suivant.
  4. Cliquez le premier champ vide sous Col1 et dactylographiez G. 
  5. Appuyez la flèche bas du curseur et tapez  PG
  6. Appuyez la flèche bas du curseur et tapez  PG-13
  7. Dactylographiez les autres estimations dont vous vous rendez compte :
     
  8. Cliquez suivant.
  9. Pour l'étiquette de colonne, tapez Estimation et valider entrer. 
  10. Placez les estimations des films en choisissant dans la boîte bascule des estimations :
     
  11. Fermez la table Vidéos.
  12. Ouvrez la base de données  musicCategories .
  13. Ouvrez la table Artistes en Mode création.
  14. Cliquez le champ Structure.
  15. Pour son type de données, choisir Assistant Liste de choix…
  16. Quand la première page de l'assistant Liste de chois s'affiche, choisir le deuxième bouton station indiquant à l'assistant ou vous dactylographierez les valeurs pour le champ, alors cliquez suivant.
  17. Cliquez le champ vide sous Col1 et dactylographiez Solo.
  18. Appuyez Tab et dactylographiez Duo.
  19. Appuyez Tab et dactylographiez Band.
  20. Appuyez la touche de déplacement du curseur et tapez Band sonore.
  21. Appuyez tab et tapez Orchestre.
  22. Appuyez la touche de déplacement du curseur et tapez Compilation.
  23. Appuyez la touche de déplacement du curseur et dactylographiez autre.
     
  24. Cliquez suivant. Acceptez l'étiquette de la colonne comme Structure et cliquez Terminer.
  25. Cliquez l'étiquette de recherche dans la partie la plus inférieure en mode création.
    Pour s'assurer que l'utilisateur peut seulement sélectionner une valeur préréglée de la liste, fixez la limite pour lister le champ à oui.
    D'autre part, si vous voulez permettre à l'utilisateur de dactylographier de nouvelles entrées, fixez la limite pour lister le champ à non (maintenir dans l'esprit que même si vous limitez l'utilisateur de sélectionner seulement dans la liste, vous pouvez par la suite modifier cette liste).
  26. Sauvegardez et fermer la table

Les champs de liste de choix dépendants

Comme fait avec le simple champ de liste de choix, vous pouvez créer un champ dont les données seront sélectionnées dans une liste. Par opposition aux champs de recherche indépendants dont vous pouvez prévoir les valeurs lorsque vous créez une base de données, un champ de recherche dépendant est un champ dont les valeurs ne sont pas connues à l'avance. Les valeurs pour un tel champ deviennent disponibles au fur et à mesure  que la base de données se développe.

Nous avons dit précédemment que les tables pourraient être liés pour échanger des informations. Basé sur notre illustration, une zone de tri de la clé étrangère d'une table doit être prête à  fournir sa table des informations prises auprès de la table de départ. En créant un tel rapport, vous devrez savoir quelle table fournirait une telle information et si le rapport sera contrôlé.

Pour créer un champ de recherche dépendant, vous choisissez un champ et procédez comme nous avons vu pour un champ de recherche indépendant pour ouvrir l'assistant Liste de choix. Cette fois, vous choisirez le premier bouton station et cliquerez suivant. Ceci vous donnera l'occasion de choisir la table qui fournira l'information nécessaire. Dans ce cas-ci aussi, vous pouvez indiquer plus d'une colonne à présenter dans la liste.

Etude Pratique Étude pratique : Obtenir des données des champs de la source extérieure

  1. Ouvrez la base de données Collection Vidéo et ouvrez la table Vidéos en mode feuille de données.
  2. Cliquez n'importe quel champ sous la colonne Remarques.
  3. Sur le menu principal, cliquez Insertion - > colonne de recherche…
  4. Dans la première page de dialogue de l'assistant Liste de choix, s'assurer que le premier bouton station est sélectionné et cliquez suivant.
  5. Dans la deuxième page, cliquez CategoriesVidéo :
     
  6. Cliquez suivant.
  7. Dans la boîte de la liste des champs disponibles, double-cliquez CatégorieVideo.
  8. Cliquez suivant.
  9. Pour l'étiquette, tapez Catégorie et cliquez terminer.
  10. définissez la catégorie appropriée pour chaque film.
     
  11. Fermez la table

Résumé de la leçon

 

Matières de MOUS (Microsoft office User Specialist)

S3 Établir les rapports de la table
S10 Placer les clés primaires
S13 Modifier les tables en utilisant Mode Création
  Utiliser l'assistant Liste de choix
S33 Établir les rapports
 

Exercices 

 

Watts prêts 

  1. Ouvrez la base de données Watts prêts. Créez une nouvelle table en Mode création avec les champs suivants :
     
    Nom de champ Type de données L'information additionnelle
    IDTypeDeprêt NuméroAuto Clé primaire
    Légende : Type d'identification de prêt
    TypeDePrêt Légende : Type de prêt
    Description Mémo

    La sauvegardez comme TypesDePrêt et la fermer.

  2. En utilisant FormolaireAuto, produire un formulaire basé sur la table TypesDePrêt. Le sauvegarder comme TypesDePrêt et le concevoir comme suit avant de le sauvegarder et de le fermer.
     
  3. Ouvrez le formulaire TypesdePrêt et créer les types de prêts suivants :
     
    Type d'identification de prêt Type de prêt Description
    1 Personnel C'est un prêt donné comme contrôle de caisse à un client qui veut un prêt en espèce
    2 Voiture Ce prêt sera traité par nos associés comme les marchands de voiture
    3 Bateau
    4 Meubles
    5 Instrument de musique Nous avons quelques associations dans les magasins d'instruments de musique. C'est le type de prêts que nous rendrons disponibles aux clients  trouvés par eux pour nous
  4. Ouvrez la table Transactions. Dans mode feuille de données, créer une nouvelle colonne en utilisant l'assistant Liste de choix (colonne). Inclure NuméroCompte et les champs Prénom de la table Clients. définissez son étiquette à Compte # puis sauvegarder et fermer la table.
  5. Ouvrir la table Transactions en mode création. Insérer un nouveau champ juste sous IDTransaction. Nommez le procédé par et commencer l'assistant Liste de choix. Inclure les champs Prénom, Nom, et Titre de la table Employés. Sauvegarder et fermer la table.
  6. En utilisant FormulaireAuto, produire un formulaire basé sur la table Transactions. Sauvegarder le comme Transactions et le concevoir comme suit :
     

    Fermer le formulaire

Associés de Tenley

  1. Ouvrir la base de données Tenley Associates et ouvrir la table Employés en mode création. En utilisant l'assistant liste de choix, configurer le champ DepartmentName ainsi que la valeur d'origine de la colonne DepartmentName de la table Départments. définissez son étiquette à Départment. Sauvegarder et fermer la table.
  2. Ouvrir la table Employés en mode création et supprimer la boîte des textes  DeparmentName. En utilisant la liste des champs, ajouter le champ DepartmentID où l'autre était. Ajuster la conception du formulaire comme suit :
     


    Sauvegarder et le fermer

Yugo National Bank

  1. Ouvrir Yugo National Bank et, en lmode création, créer une nouvelle table avec les champs suivants :
     
    Nom de champ Type de données L'information additionnelle
    IDRaisonCharge NuméroAuto Clé primaire
    Légende : Identification de la raison de la charge
    RaisonCharge Légende : Raison de la charge
    Description mémo

    L'enregistrer comme RaisonsCharge et la fermer.

  2. En utilisant FormulaireAuto, produire un formulaire basé sur la table RaisonsCharge et le sauvegarder comme RaisonsCharge avant de le fermer.
     
  3. Ouvrir le formulaire RaisonsCharge et créer les enregistrements suivants.
     
    ID raison Charge Raison charge Description
    1 Charge mensuelle A appliqué chaque mois à tous les comptes
    2 Découvert Appliqué si un compte client demeure négatif pendant 72 heures

    Fermer le formulaire

 
 

Précédent Copyright © 2007, Yevol Suivant