Page d'Accueil

Requêtes et Relations

 

Introduction

Queries and Relationships

En créant les relations entre les tables, nous sélectionnons la clé primaire d'une table et la clé étrangère d'une table dépendante pour les joindre. Une fois qu'une telle relation est créé, vous pouvez créer une requête qui combine les deux tables pour créer un ensemble d'enregistrements. Cet ensemble inclus soit tout les enregistrements ou isole uniquement les enregistrements qui ont des entrées.

Par exemple, imaginez que vous avez créé une table nommée Personnes comme suit, où le Genre de l'enregistrement est sélectionné à partir d'un champ de consultation:

The Persons Table

Supposons que vous voulez créer une requête qui inclut les personnes de cette table et leurs genres. Une question qui vient à l'esprit est : est-ce que vous voulez créer une liste de personnes qui peuvent seulement être identifiées par leur genre ou, voulez-vous que la liste inclue tout le monde? Ce concept mène à ceux qui sont évoqués lorsque les requêtes internes se joignent aux requêtes externes. Il y a deux manières d'obtenir de telles requêtes : vous pouvez disposer relation entre deux tables pour se rendre compte de ce type de relation ou vous pouvez directement la créer en concevant une requête.

Jointure interne

En établissant une requête, vous sélectionnez des champs et demandez à Microsoft Access de les isoler comme faisant partie de la requête. La plupart de temps, vous voudrez seulement les champs qui incluent un type de validation de votre choix (nous l'appellerons un critère). Un Une jonction interne est le genre de requête qui présente seulement les champs qui ont les entrées correspondant sur les deux tables d'une relation. Par exemple, dans la table ci-dessus, si vous voulez créer une requête qui inclut seulement les personnes dont les enregistrements contiennent le genre, vous la créerez comme une jointure interne. Dans une telle requête, seulement le 1er, le 2eme, le 4ème, et le 7ème enregistrement s'afficheront:

Select Query

Pour indiquer qu'une relation est une jointure interne, après avoir créé la relation,  vous pouvez afficher la fenêtre de la zone de dialogue Éditer Relation et cliquer le type Joindre… La zone de dialogue des propriétés de jointure présente trois options qui vous permettent de définir le sens de la relation entre les tables.

Pour indiquer un interne et l'associer à un énoncé SQL, inclure INNER JOINT dans l'énoncé.

Etude Pratique Étude pratique : Créer des relations Jointure Interne

 

 

  1. Ouvrez la base de données Musique Collection1 que vous avez commencée dans la leçon précédente.
  2. sur la barre d'outils la base de données, cliquez le bouton Relations
  3. Dans la fenêtre des relations, cliquez la ligne de jointure entre la table Artistes et la table MusicAlbums pour la sélectionner.
  4. Sur le menu principal, cliquez Relations - > Modifier une relation …
  5. Après s'être assuré que ArtistID et RecordingArtistID sont sélectionnés dans les boîtes bascule, cliquer le bouton Type jointure .
    Dans la zone de dialogue Propriétés de la jointure, cliquez le premier bouton station (il devrait être déjà sélectionné).
     
  6. Cliquer OK deux fois.
  7. Ouvrez la base de données Rockville Techno.
  8. Ouvrez la table SociétéBiens en lmode création.
  9. Droit-cliquez Remarques et cliquez Insérer rangées.
  10. Dans le nouveau champ vide, dactylographiez AssignéA .
     

    Nous plaçons le nom de ce champ à AssignéA. Ce champ sera lié au champ IDEmployé de la table Employés. En réalité, vous devriez donner à ce champ le même nom que le champ de la clé primaire à laquelle il est lié . Nous utilisons un nom différent ici juste pour démontrer comment créer une relation en mode création d'une requête. Dans l'avenir, donnez toujours le même nom que le champ auquel on le lie dans la table mère. Dans ce cas-ci, il aurait dû s'appeler EmployeeID.

  11. Placer son type de données à Numérique.
  12. Dans la section inférieure de l'affichage, s'assurer que la taille du champ est définie à long nombre entier. Dans la zone légende, dactylographiez assigné à.
  13. Sauvegardez la table et le muter en mode feuille de données.
  14. Dans la colonne Assigné à, dactylographiez les nombres comme suit :
     
    Identification des capitaux Type de capitaux Assigné à
    1 Imprimante
    2 Ordinateur 2
    3 Ordinateur portable 1
    4 Imprimante
    5 Appareil photo digital
    6 Ordinateur
    7 Ordinateur 1
    8 Ordinateur 4
  15. Fermez la table SociétéBiens.
  16. Dans la fenêtre de la base de données, cliquez le bouton Formulaires.
  17. Pour créer une nouvelle requête, sur le menu principal, cliquer insertion - > Requête et, dans la nouvelle zone de dialogue des requêtes, double-cliquer mode création.
  18. Dans la zone de dialogue Afficher la table, double-cliquez Employés et SociétéBiens, puis cliquez Fermer.
  19. Dans les Employés listés, traîner IDEmploye et laisser tomber sur AssignéA dans la liste de SociétéBiens :
     
  20. Noter qu'une ligne a été tirée entre les deux tables et il joint les deux champs.
    Droit-cliquez la ligne qui joint les tables et cliquez Propriétés jointure.
  21. Notez que le premier bouton station qui représente la jointure interne est sélectionné.
    Cliquer OK.
  22. Choisissez les champs, dans la liste de SociétéBiens, double-cliquez TypeBien, Marque, Modèle, et PrixAchat.
  23. Dans Employés énumérés, double-cliquez Nom et Prénom.
     
  24. Pour visionner l'énoncé SQL, droit-cliquez la barre des titres de la fenêtre et cliquez Mode SQL :
     
  25. Pour visionner le résultat de la requête, sur la barred'outils mode création des requête, cliquez Exécuter
     
  26. Notez que, dans cette jointure interne, seulement les Biens assignés à un employé sont affichés. Aucun Bien non assigné à un employé ne s'afiche.
    Après avoir regardé la requête, cliquez Fermer. Une fois demandé si vous voulez la sauvegarder, cliquez non.
  27. Ouvrez la table SociétéBiens en mode création.
  28. Changez le nom du champ AssignéA en IDEmployé et s'assurer qu'il garde sa légende comme assigné à.
  29. Sauvegardez la table et la fermer.
  30. Comme la table SociétéBiens est encore sélectionnée dans la section des Tables de la fenêtre de la base de données, pour créer une nouvelle requête, sur la barre d'outils de la fenêtre de la base de données, cliquez la flèche du bouton Nouvel objet et cliquez Requête. Dans la zone de dialogue Nouvelle requête, alors que mode création est sélectionné, cliquez OK.
  31. Notez que la table SociétéBiens est déjà sélectionnée.
    Pour créer une relation entre la table SociétéBiens et la table Employés, droit-cliquez un secteur vide dans la section supérieure de la fenêtre et cliquer Relations…
  32. Droit-cliquez un secteur vide dans la fenêtre des Relations et cliquer Afficher la table.
  33. Dans la liste des tables, double-cliquez Société Biens (la table Employés devrait déjà être dans la fenêtre ; sinon, l'ajouter également) et fermer la zone de dialogue Afficher la table.
  34. Traîner IDEmployé des employés énumérés et laisser tomber sur IDEmployé dans la liste de sociétéBiens.
  35. Après s'être assuré que IDEmployé est sélectionnée dans les deux boîtes bascules, cliquez Type jointure . Dans la zone de dialogue des propriétés jointure, s'assurer que le premier bouton station est sélectionné et cliquez OK.
  36. Dans la zone de dialogue des relations, cliquer la boîte de contrôle Appliquer l'intégrité référentielle et cliquer les boîtes de contrôle sous elle.
  37. Cliquez Créer.
  38. Noter le 1 et le symbole de l'infini entre la table SociétéBiens et la table Employés.
    Sauvegardez et fermer le fenêtre des relations.
  39. Pour ajouter une table, droit-cliquez un secteur vide dans la fenêtre Requête Sélectionnée et cliquez Afficher la table.
  40. Dans la liste des table, double-cliquez Employés et cliquer Fermer.
  41. Dans la liste de SociétéBiens, double-cliquez les champs TypeBien, Marque, Modèle, et PrixAchat.
  42. Dans Employés énumérés, double-cliquez les champs Nom et Prénom.
     
  43. Pour visionner l'énoncé SQL, droit-cliquez la barre des titres dans la fenêtre et cliquez Mode SQL.
  44. Pour visionner le résultat de la requête, sur la barre d'outils en mode création des requête, cliquez Exécuter . Le résultat est identique au résultat ci-dessus.
  45. Après avoir regardé la requête, cliquez Fermer. Vous demandant si vous voulez la sauvegarder, cliquez oui.
  46. Dactylographiez capitaux assignés aux employés et appuyez OK.

Jointure Externe 

Les requêtes que nous avons utilisées jusqu'ici et qui étaient basées sur des tables reliées, nous ont permis d'obtenir seulement les champs ayant des entrées basées sur des relations établies. Les champs qui n'ont pas suivi les règles ont été exclus. Au lieu d'exclure les champs, le SQL vous permet de créer une requête qui inclut tous les champs, pas seulement ceux qui suivent les règles, tant que les enregistrements font partie de l'une ou de l'autre table. Une telle requête est mentionnée comme jointure externe. Pour contrôler le résultat de ce type de requête, le SQL considère le sens d'une relation.

En créant les relations, nous avons appris à traîner une clé primaire d'une table mère à une table dépendante ou table fille. Dans ce type de relation, la table (ou la requête) qui contient l'origine du relation est désigné table de gauche. L'autre table est désigné table de droite. Basé sur ceci, il y a deux types de jointure externe : la jointure gauche représentée dans le SQL comme LEFT JOIN et la jointure droite représentée par RIGHT JOIN.

Comme fait avec la relation de jointure interne, la jointure de gauche et de droite peuvent être préparées dans la fenêtre des relations des tables. Si la requête a déjà été créée et vous voulez changer son sens, vous pouvez le changer dans mode création de la requête.

Etude Pratique Étude pratique : Créer les relations à jointure externe 

  1. Ouvrez la base de données vidéos Collection1 et, sur la barre d'outils de la fenêtre de la base de données, cliquez le bouton Relations
  2. Dans la fenêtre Relations, double-cliquez la ligne de jointure entre Directeurs et Vidéos.
  3. Dans la zone de dialogue Modifier une relation, cliquez type jointure.
  4. Dans la zone de dialogue Propriétés de la jointure, lire toutes les options et cliquer alors le deuxième bouton station.
     
  5. Cliquez OK.
  6. De la même manière, double-cliquez chaque ligne et la configurer avec le deuxième bouton par radio de la zone de dialogue Propriétés de la jointure.
  7. Ouvrez la base de données Musique Collection1 et ouvrez la fenêtre Relations.
  8. Configurer chaque relation comme suit :
     
  9. Si vous employez Microsoft Access 2000 et plus, pour imprimer les rapports, sur le menu principal, cliquer fichier - > imprimer rapports…
  10. Pour sauvegarder le rapport, faire Ctrl + S. 
  11. Dactylographier le diagramme de la collection des musiques comme nom du rapport et valider entrée. 
  12. Fermer la fenêtre des rapports.
  13. Ouvrir la base de données de la collection des vidéos et sa fenêtre des rapports. Puis, configurer tous les rapports comme fait dans la base de données de la musique Collection1 :
     
  14. Sauvegardez et fermer la fenêtre Relations.
  15. Ouvrez la base de données Rockville Techno et, sur la barre d'outils de la fenêtre de la base de données, cliquer le bouton Relations.
  16. Droit-cliquer la ligne entre Employés et SociétéBiens puis cliquez Modifier la relation.
  17. Dans la zone de dialogue Relations, cliquer le type jointure et cliquer le deuxième bouton station.
  18. Cliquez OK deux fois.
  19. Sauvegardez et fermer la fenêtre Relations.
  20. dans la fenêtre de la base des données, cliquez Tableaux et cliquer SociétéBiens.
  21. Sur le menu principal, cliquer Insertion - > Requête . Puisque le mode création est sélectionné, cliquez OK.
  22. Comme fait précédemment, ajouter la table Employés à la requête.
  23. À partir de la liste de SociétéBiens, double-cliquez TypeBien, Marque, Modèle, et PrixAchat.
  24. Dans Employés énumérés, double-cliquez Prénom et Nom.
  25. Pour regarder l'énoncé SQL, droit-cliquez la barre des titres de la fenêtre et cliquer Mode SQL. Notez que la relation est LEFT JOIN.
     

     

  26. Pour exécuter la requête, sur le menu principal, cliquez Affichage - > Mode feuille de données.
     
  27. Après avoir regardé la requête, cliquer Fermer. Une fois demandé si vous voulez la sauvegarder, cliquez oui.
  28. Dactylographiez capitaux déjà assignés et appuyez OK.
  29. Suivre les mêmes étapes pour créer une requête avec les mêmes champs. De nouveau, sur le menu principal, cliquez Insertion - > Requête. Puisque mode création est sélectionné, cliquez OK.
  30. Comme fait précédemment, en plus de la table SociétéBiens, ajoutez la table Employés à la requête.
  31. Dans la liste sociétéBiens, double-cliquez TypeBien, Marque, Modèle et PrixAchat.
  32. Dans Employés énumérés, double-cliquez Prénom et Nom.
  33. Droit-cliquez la ligne entre SociétéBiens et Employés puis cliquer les propriétés de la jointure.
  34. Dans la zone de dialogue des propriétés de la jointure, lire le texte de tous les boutons statioz. Cliquer le troisième bouton station.
     
  35. Cliquez OK.
  36. Pour regarder l'énoncé SQL, droit-cliquez la barre des titres de la fenêtre et cliquer Mode SQL. Notez que la relation est RIGHT JOIN.
     
  37. Pour exécuter la requête, sur le menu principal, cliquer Affichage - > Mode feuille de données
     
  38. Après avoir regardé la requête, cliquer Fermer. Une fois demandé si vous voulez la sauvegarder, cliquer oui.
  39. Dactylographier capitaux pas encore assignés et cliquer OK.
  40. Fermer Microsoft Access.
 

Résumé de la leçon

 

Matières de MOUS (Microsoft Office User Specialist)

 
S32 Créer et modifier plusieurs requêtes sélectionnées
S33 Établir les relations
 

Exercices 

 

Watts prêts 

Yugo National Bank


Précédent Copyright © 2007, Yevol Suivant