formateur informatique

Débuter avec Access, créer sa première base de données

Accueil  >  Bureautique  >  Access  >  Access Débutant  >  Débuter avec Access, créer sa première base de données
Livres à télécharger


Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :


Inscription Newsletter    Abonner à Youtube    Vidéos astuces Instagram
Sujets que vous pourriez aussi aimer :


Débuter avec Access - Première base de données
Access est un SGBDR, un Système de Gestion de Bases de Données Relationnelles. Il est conçu pour gérer les données complexes reliées entre elles. Lorsque ces données deviennent conséquentes, vous ne devez en aucun cas utiliser Excel pour les gérer mais Access. Un de ses objectifs est d'éviter de répéter les données. Par exemple, dans le cas de clients qui passent régulièrement des commandes, nous ne construirons pas un tableau qui répète à chaque fois les données du client et les informations de sa commande. Nous construirons une table qui identifie de façon unique chaque client. Et à cette table, par le biais d'une clé primaire, nous relierons la table commandes dans laquelle seront listées toutes les commandes. Ainsi pour un client, dont les informations ne seront pas répétées, il sera facile d'obtenir la synthèse de toutes les commandes qu'il a passées.
  • Cliquer sur l'icône d'Access pour le démarrer,
A l'ouverture, Access propose plusieurs choix comme Application web personnalisée. Nous y reviendrons.
  • Cliquer sur le premier, base de données de bureau vide,
Enregistrement de la base de données à la création
Comme vous le remarquez, et c'est une différence de philosophie fondamentale avec les autres logiciels, Access vous demande tout de suite d'enregistrer votre base dedonnées, avant même de commencer. En effet les saisies dans les tables et formulaires sont enregistrées en temps réel sur le disque dur. Elles ne sont pas stockées en mémoire pour être ensuite sauvegardées.
  • Taper un nom dans la zone Nom du fichier,
  • Choisir un emplacement de sauvegarde en cliquant sur l'icône du dossier à droite,
  • Puis cliquer sur le bouton Créer.
Toute l'ossature d'une base de données se construit sur les tables. Ce sont elles qui doivent être pensées pour gérer les données et les relier entre elles avant de commencer tout autre travail. C'est pourquoi Access vous dirige d'entrée sur la vue d'une première table à créer en mode Feuille de données.
Première table Access en feuille de données
Vous remarquez, comme pour tous les logiciels Office, la présence des rubans sur la partie supérieure de la fenêtre. La colonne de gauche quant à elle, liste tous les objets de votre base de données, créés à ce stade. Nous y retrouverons ainsi les tables, les requêtes, les formulaires, les états et les macros. Pour nos clients, nous allons définir quels sont les champs qui composent notre table. Pour ce faire :
  • En haut à gauche, cliquer sur la flèche du bouton Affichage,
  • Dans la liste, cliquer sur Mode Création,
Access demande un nom pour cette table.
  • Saisir Clients puis valider par Ok.
Première table Access en mode conception
Vous basculez dans la vue du mode création de la table Clients, désormais listée explicitement dans la colonne de gauche. La création des champs (Les en-têtes de colonne de votre tableau ) requiert deux informations pour chacun d'entre eux. Le nom du champ et son type dedonnées. Il est judicieux d'attribuer aux noms des champs, le préfixe du nom de la table. Vous le verrez, il sera ainsi plus facile de les manipuler via les requêtes notamment.
  • A la place de N°, taper clients_num et enfoncer la touche Tabulation,
Vous vous retrouvez ainsi dans la colonne Type de données.
Création des champs de table, Type de données et tailles
Cette colonne représente un point crucial au moment où vous montez les tables qui définissent l'ossature de votre base de données. En effet ils permettent de dimensionner les champs en même temps que vous leur affectez un type. Le type doit toujours correspondre précisément à la nature de l'information qui sera saisie. Il peut s'agir d'un texte pour les noms, d'une date pour les dates d'achat, d'un nombre entier pour la quantité achetée etc... Mais ce n'est pas tout. Ces champs ne doivent pas être dimensionnés trop grands. Car à chaque champ, Access alloue l'espace mémoire en conséquence pour le gérer. Si votre base est volumineuse et qu'elle traite beaucoup de données, un mauvais dimensionnement occasionnera des ralentissements, nuisibles pour votre site Web par exemple. Ainsi, un texte pour un nom pourra être limité à 20 ou 25 caractères. Un nombre entier pour une quantité achetée pourra être un entier court ou un Octet. Nous reviendrons sur ces notions fondamentales. Ici nous conservons le type de données NuméroAuto. En effet, chaque client doit être unique. Le NuméroAuto s'incrémente automatiquement et attribue un numéro unique à chaque nouveau client saisi. A ce titre, vous notez la présence d'une petite clé sur la gauche du nom du champ. Il s'agit d'une clé primaire. Uneclé primaire n'autorise pas les doublons et permet de relier les tables entre elles. Chaque table devrait disposer d'une clé primaire. Poursuivons la création des champs :
  • Sur la ligne du dessous, créer le champ clients_nom,
  • Lui affecter le type de données Texte court,
  • En bas de la fenêtre, dans l'onglet Général des Propriétés du champ, régler la valeur de la propriété Taille du champ sur 25,
Propriété Taille du champ en création de table Access
Pour ne pas être trop gourmand, nous limitons le nombre de caractères pour le nom du client. Nous essayons de dimensionner au plus juste et au plus judicieux comme nous l'avons expliqué avant.
  • Créer ensuite le champ clients_prenom en Texte court et taille 25,
  • Créer le champ clients_cp en Texte court et taille 5,
  • Créer le champ clients_ville en Texte court et taille 25,
  • Créer le champ clients_dateN en Date/Heure et Format Date, abrégé,
Typage des champs de table en conception

Le champ clients_dateN est prévu pour la date de naissance du client. Vous notez que le champ clients_cp est typé en texte et non en numérique. En effet, nous ne ferons jamais d'opération sur les codes postaux. De plus le champ texte permet de limiter la taille du champ à 5 caractères soit la taille exacte d'un code postal.
  • Enregistrer cette table (CTRL + S),
Les objets créés comme les tables et formulaires doivent être enregistrées contrairement aux saisies qui se sauvegardent en temps réel comme nous l'avons expliqué plus haut.
  • Cliquer sur le bouton Affichage en haut à gauche dans le ruban,
Vous basculez ainsi en mode feuille de données, le mode de saisie des données.
  • Saisir quelques enregistrements comme le suggère la capture ci-dessous.
Saisie enregistrements table Access
Pensez à utiliser la touche tabulation pour passer au champ suivant. Vous remarquez la limitation des champs en taille. Si par exemple vous essayez de dépasser les 5 caractères pour la saisie d'un code postal, vous constatez que la saisie se bloque. Il s'agit donc d'une sécurité intéressante. Chaque nouvelle ligne (nouvel enregistrement) s'accompagne de l'attribution automatique d'un nouveau numéro unique (clients_num). Ici les saisies sont enregistrées en temps réel sur le disque dur. Nous allons maintenant construire la table Commandes. Nous allons volontairement la simplifier afin de nous concentrer exclusivement sur la philosophie de base de données pour l'instant. Nous limiterons donc le nombre de champs.
  • Fermer l'onglet de la table Clients en cliquant sur sa croix en haut à droite,
  • Cliquer sur l'onglet Créer en haut de la fenêtre Access,
  • Dans le ruban, cliquer sur le bouton Création de table,
Nous revenons ainsi dans le mode Création de table dans lequel nous étions toute à l'heure. Chaque table doit avoir un identifiant unique :
  • Créer le champ Commandes_num,
  • Lui affecter le type de données NuméroAuto,
  • Cliquer avec le bouton droit de la souris sur son entête de ligne,
  • Dans le menu contextuel, cliquer sur Clé Primaire,
Vous voyez ainsi apparaître l'icône de la clé primaire en regard du champ. Cette dernière permettra d'éviter de saisir des commandes en double.
Création clé primaire base de données Access
  • Créer ensuite le champ Commandes_client avec un type de données Numérique et une taille définie sur Entier long,
Ce champ numérique servira à faire le lien entre le client et ses commandes. La taille Octet aurait été trop petite car un octet permet la saisie d'un nombre de 0 à 255. Nous espérons bien avoir plus de 255 commandes. De plus comme ce champ va servir de liaison, il doit être du même type que son parent (Clients_num) qui est un Entier long.
  • Créer le champ Commandes_total en numérique et de taille Réel simple,
Un réel simple autorise les décimales pour les montants qui ne sont pas ronds.
  • Créer le champ Commandes_date en Date/Heure et de format Date, abrégé comme toute à l'heure,
  • Enregistrer cette table (CTRL + S) en la nommant Commandes,
Cette nouvelle table apparaît bien dans la liste des objets sur la gauche.

Nous ne devons pas saisir tout de suite dans la table Commandes. Nous devons ajouter une sécurité qui empêchera toute saisie de commande n'appartenant à aucun client. Pour ce faire, nous allons établir une relation entre ces deux tables en appliquant l'intégrité référentielle.
  • Fermer la table Commandes en cliquant sur la croix de son onglet en haut à droite,
  • Cliquer sur l'onglet Outils de base de données en haut de la fenêtre,
  • Dans le ruban, cliquer sur le bouton Relations,
  • Dans la boîte de dialogue qui apparaît, sélectionner les deux tables Clients et Commandes à l'aide de la touche CTRL et de la souris,
  • Cliquer sur le bouton Ajouter puis sur le bouton Fermer,
  • Les deux tables sont matérialisées côte à côte avec leurs noms de champs.
    • Cliquer et glisser le champ Clients_num sur le champ Commandes_client,
    Une boîte de dialogue s'affiche instantanément.
    • Cocher les trois cases Appliquer l'intégrité référentielle, Mettre à jour en cascade... et Effacer en cascade...,
    • Cliquer sur Ok pour valider.
    Relations entre les tables avec intégrité référentielle
    Vous remarquez l'apparition d'un trait en biais reliant les deux champs des deux tables avec les symboles 1 et infini. Ils signifient tout simplement qu'un client peut passer un nombre de commandes illimité. A l'inverse une commande ne peut appartenir au plus et au moins qu'à un seul client. L'intégrité référentielle est la sécurité Access qui empêchera d'attribuer une commande à un client qui n'existe pas. Autre avantage du SGBDR, base de données relationnelle, les actions en cascade. Par exemple, le fait de supprimer un client de la table Clients, supprimera toutes ses commandes dans la table Commandes (Effacer en cascade).
    • Enregistrer les relations (CTRL + S) et fermer son onglet,
    • Dans la liste des objets sur la gauche, double-cliquer sur la table Clients,
    Nous l'affichons ainsi en mode saisie.
    • De la même façon, double-cliquer sur la table Commandes,
    Les deux tables apparaissent ainsi côte à côte. Leurs onglets nous permettent de basculer facilement de l'une à l'autre.
    • Saisir plusieurs commandes comme l'illustre la capture ci-dessous,
    Faites-en sortes d'attribuer plusieurs commandes aux mêmes clients à l'aide des numéros de client. Tentez de même d'attribuer une commande à un client qui n'existe pas (Par exemple le numéro 7).
    Sécurité intégrité référentielle, base de données Access
    Vous constaterez le message d'erreur de l'intégrité référentielle apparaître. La relation entre les tables nous empêche de commettre l'erreur d'associer une commande à un client qui n'existe pas. C'est donc une sécurité très importante pour ne pas risquer de perdre des traitements de commandes dans la nature.

     
    Sur Facebook
    Sur Youtube
    Les livres
    Contact
    Mentions légales



    Abonnement à la chaîne Youtube
    Partager la formation
    Partager sur Facebook
    Partager sur Twitter
    Partager sur LinkedIn