Notre magasin informatique

Rue Albert 1er, 7

B-6810 Pin - Chiny

(/fax: 061/32.00.15

Le cours ACCESS en ligne

FORMATIONS

Le MAGASIN YBET

PRODUITS et SERVICES

 

Activités et présentation

 
Formation INTERNET

  Plan d'accès

 
YBET informatique Nous contacter    

6. Base de donnée relationnelle Access

1. Requête relationnelle sous Access - 2. Base de donnée relationnelle par formulaire

Lorsque nous avons créé nos tables, nous avons déjà mentionné que des tables pouvaient être reliées entre-elles. Une liaison entre 2 tables Access s'appelle une relation. Par extension, une base de donnée Access qui utilise plusieurs tables reliées entre elles s'appelle une base de donnée relationnelle. Dbase et MySQL acceptent également cette fonctionnalité. Cette possibilité permet de réduire les données à rentrer. Par exemple, dans une gestion de stock, une table reprendra le produit (code, description, nom du fournisseur, ...) tandis qu'une autre table reprendra les coordonnées du fournisseur. Ceci permettra de ne rentrer les coordonnées du fournisseur qu'une seule fois et de relier le code fournisseur dans la table produit. Un deuxième avantage vient de la taille des champs. Moins de données sont rentrées dans la base de donnée, ce qui diminue sa taille.

Une représentation de nos 2 tables va nous permettre d'y voire plus claire. La table Album reprend le classement de l'album. Comme ce champ est une clé primaire, le contenu sera unique. Le titre et la date de l'album sont indicatifs. Par contre, la table contenu album reprend le contenu effectif de cet CD - DVD. Le point de liaison entre ces 2 tables est le champ "classement". Un album reprenant comme classement "FA-002" contiendra donc tous les titres repris dans la table "contenu album" avec un classement identique. Il nous reste à faire la liaison entre ces 2 tables, ce qu'on appelle une relation. Plusieurs méthodes sont possibles. La première méthode est de créer une requête, la deuxième méthode est de créer un formulaire avec un sous-formulaire.

1. Requête relationnelle sous Access

La première opération va être de créer 2 requêtes à partir des tables album et contenu album. Ces requêtes vont simplement classer les enregistrements. La première requête utilise la table album. Créons cette requête album en faisant glisser tous les champs. Trions juste le champ classement en ordre croissant. Appelons cette requête "requete album tri". De même avec la table "Contenu album", trions par ordre croissant sur le classement puis sur la plage. Appelons cette requête "requete contenu album tri".

Nous allons maintenant créer une requête Access utilisant ces 2 requêtes (utilisez le mode Création). Commençons par ajouter ces 2 requêtes.

La relation entre les 2 requêtes n'est pas créée. Pour le faire, cliquons sur classement dans la requête album et en maintenant la souris enfoncée, glissons vers classement de l'autre requête. Une ligne joint maintenant les champs classements des 2 requêtes. Faisons glisser dans la partie du dessous tous les champs sauf classement de "Contenu album". En effet, ce champ classement sera identique

Sauvegardons notre requête relationnelle sous le nom RELATION. En ouvrant la requête, nous retrouvons bien tous les enregistrements avec les contenus des champs des 2 requêtes. Cette méthode permet de ne plus taper par plage de CD le titre de l'album et la date. C'est un gain de temps mais finalement n'apporte pas grand chose.

Cette requête relationnelle va nous permettre également de créer un formulaire. Utilisons le mode assistant en mode colonne par exemple.

Et voilà, non seulement, les données apparaissent en ordre croissant suivant le classement, mais tous les champs sont remplis. Chaque fois que dans la table contenu, le classement correspond, les 2 sont affichés. Ceci nous évite de retaper par plage tous les renseignements sur l'album en lui-même. Par contre, si le classement n'existe pas dans une des 2 tables, aucune information n'est affichée.

Nous pourrions faire un formulaire d'aspect plus sympathique que les 2 ci-dessus, reprenons les 2 tables par exemples.

2. Base de donnée relationnelle Access par un formulaire

La méthode la plus simple et la plus complète sous Access pour créer une base de donnée relationnelle passe par les formulaires. Cette solution va nous afficher chaque fois une plage sur l'écran. Pourrions-nous afficher les caractéristiques du CD - DVD et les en même temps tous les titres de l'album? .... Devinez. Oui. Cette solution passe par un formulaire utilisant un sous-formulaire

Commençons par créer ce sous formulaire comme un formulaire normal. A l'aide de l'assistant, sélectionnons la requête "Requête contenu album tri". Cette requête reprend les contenus des albums triés par code du CD ou du DVD. Comme présentation, choisissons "Feuille de donnée" et sauvons ce simple formulaire comme Contenu album.

En mode formulaire, créons un formulaire en mode assistant. Sélectionnons uniquement la requête "requête album tri". Comme présentation, choissions "Justifié".

Modifions la structure du formulaire. A l'aide de la boîte à outils, sélectionnons "sous-formulaire-Sous-Etats" et créons la zone avec la souris sous les données de notre formulaire.

A l'aide de l'assistant, nous allons Créer ce sous formulaire.

Comme formulaire, sélectionnons le formulaire Contenu Album créé ci-dessus. Nous allons définir nous même le champ de lien (même si Access le fait automatiquement). Ceci va mettre les 2 bases en liaison. Laissons la dénomination de ce sous-formulaire comme Contenu album. 

Nous pouvons si nécessaire augmenter la taille de ce sous-formulaire pour afficher plusieurs lignes de contenu de chaque album

Et voilà notre formulaire relationnel terminé. La barre d'outils de déplacement en bas permet de se déplacer entre les albums, celle au milieu, à l'intérieur des titres de l'album.

Dans notre formulaire Access, on retrouve donc les enregistrements de la première table Contenu album au-dessus et par liaison relationnelle, la deuxième table qui reprend chaque fois le contenu de chaque album.

En complément:

La suite du tutorial Access> 7. Les états

4 < Formulaires Access

Plan du cours

1. Introduction aux bases de données - 2. Table Access - 3. Requête - 4. Formulaires Access - 5. Mode utilisateur - 6. Base de donnée relationnelle - 7. Les Etats - 8. Macros et menus de démarrage - 9. Propriétés avancées des champs - 10. Gestion d'un club - 11. Liste de choix - 12. Macros - 13. Formulaires avancés - 14. Procédures événementielles - 15. Champs Calculés - 16. Partager une base de donnée en réseau - 17. Sécurité et accès utilisateur

Accueil YBET informatique

Le site du magasin YBET (info, se dépanner, cours hardware, ...)