Base de données : Mise en place sur MS Access

Base de données : Mise en place sur MS Access

Cet article fait partie de la série consacrée aux bases de données. Il va vous montrer comment créer une base de données sous Microsoft Access.

Nous avons vu précédemment comment bien choisir un SGBD, le système permettant l’élaboration de notre base de données.

Ouverture de l’application MS Access

Je travaille sur Microsoft Office 365, c’est la dernière version de Microsoft Office et elle est sous abonnement. Il présente l’avantage d’avoir les dernières mises à jour et d’avoir des services de Cloud.

J’ai déjà créer la base de données que j’ai appelé base élèves.

Raccourci MS Access

Cette base de données est pour l’instant vierge.

La base de données que nous allons créer est la copie conforme du modèle logique (MLD) que nous avons étudier précédemment. Nous allons donc nous baser sur ce qui a été vu dans l’article Base de données : modélisation logique.

Création des tables

Tout d’abord, nous pouvons voir que le MLD comporte deux tables : les tables CLASSE et ELEVE.

Mcd classe Eleve
Modèle Logique de Données (MLD)

Nous allons commencer par la table CLASSE (ça tombe bien c’est la première table par ordre alphabétique).

Il faudra tout d’abord glisser la souris sur l’onglet Créer du ruban Access et ensuite cliquer sur Création de table.

Bouton Création de table Access

Une fenêtre va s’ouvrir et ainsi vous permettre de créer une table.

Ecran de nouvelle table

Conformément au MLD, nous allons créer les tables ELEVE et CLASSE avec les mêmes champs.

Comme vous pouvez le voir, j’ai déjà mis les clés primaires des tables. Pour faire cela il suffit de faire un clic-droit sur la colonne grise située à gauche du champ et de cliquer sur Clé primaire.

Création d’une clé primaire

N’oubliez pas d’enregistrer votre table pour conserver votre dur labeur. Vos tables ne sont qu’au nombre de 2 et ne comptabilisent pas 40 champs mais quand vous aurez 10 tables même avec 4 champs vous me remercierez !

Par défaut elle porte le nom de table »n ». Si elle ne porte pas encore de nom, son nom sera demandé. Si aucune clé primaire n’est définit, le premier champ sera automatiquement défini comme clé primaire.

Création des relations

Une fois les tables créées, il faut montrer faire le lien entre les tables ELEVE et CLASSE. Nous avons vu dans l’article Base de données : modélisation logique que 1 élève est dans une classe.

Ecran Relation

Pour modéliser cette condition, nous allons aller sur l’onglet Outils de base de données du ruban Access et cliquez sur le bouton Relations.

Bouton Relations

Un écran vide apparait. Nous allons tout d’abord ajouter nos deux tables. Pour avoir la liste des objets qu’on peut mettre en relation, nous allons faire clic-droit Afficher la table …

La liste des tables apparait à droite.

Liste des tables

Pour les ajouter, un simple double clic sur chaque table suffit.

Deux tables dans la page Relations

Nous pouvons le constater, les tables CLASSE et ELEVE contiennent toutes les deux le champ NumClasse. Le champ dans la table CLASSE est la clé primaire de la table tandis que le champ NumClasse de la table ELEVE est une clé étrangère.

Il faut faire le lien entre ces deux champs pour dire à notre base de données que le numéro de classe de l’élève correspond à une classe existante et qui se retrouve dans la table CLASSE. Vous me suivez toujours ?

Dans l’article sur le MLD, nous avions cette exemple.

L’élève Damien DUPONT est né le 10/02/2013 et est en CE2.

Il faut donc que la table CLASSE contiennent une donnée CE2.

Relation CLASSE-ELEVE

Pour faire cette relation il faut faire un clic gauche sur le champ contenant la clé primaire et rester cliquer en glissant sur la clé étrangère. Si cela fonctionne vous aurez un petit + qui s’affiche. Une fois le champ de destination atteint, vous pouvez relâcher votre souris. Bon bon, relâchez pas la souris en elle-même mais bien le bouton hein ? Si tout est bon, l’écran suivant apparait.

Ecran de création d’une relation

Il y a plein de choses à voir sur cette écran mais pour vous qui débutez je vais être gentille. On va la jouer soft en commençant par la partie de gauche. Oui oui celui avec le tableau et les trois cases à cocher.

Vous voyez dans ce tableau les deux champs que nous voulons mettre en relation.

Et les trois cases ça sert à quoi exactement Flore ? Attendez, Attendez, je vous explique chaque case l’une après l’autre.

Appliquer l’intégrité référentielle : l’intégrité référentielle est le fait que les informations d’une table A doivent faire référence aux informations d’une table B. Quand on dira « L’élève Dupont est en classe de CE2 » Access contrôlera que la classe CE2 existe bien. Voici un tutoriel sympa sur les intégrités référentielles sous Access.

Mettre à jour en cascade les champs correspondants : si on modifie la donnée « CE2 » par « nouveau CE2 », cette information sera répercuté dans la table ELEVE.

Effacer en cascade les enregistrements correspondants : Parfois on a besoin que lorsqu’on efface les données d’une table A on ait besoin d’effacer toutes les données d’une table B. Dans notre exemple, en cochant cette case, si on efface la donnée CE2 dans la table CLASSE, tous les élèves en CE2 seront effacés de notre base. Cela dépend donc de vos besoins.

Bon, maintenant que nous avons les explications à tout ça, j’ai coché les trois cases et j’ai fait Créer.

Tables en relation

Nous constatons un 1 à côté de la table CLASSE qui correspond au 1,1 du MLD et le signe infini qui correspond au 0,n.

Remplissage des tables

Maintenant que tout est en place nous pouvons remplir notre base de données. C’est bien beau de faire une base de données mais il faut bien la remplir avec des données concrètes.

Pour cela retourner dans vos tables et saisissez vos données.

NumClasse et NumEleve sont des identifiants de données en numéro auto c’est à dire que ce n’est pas à nous de les saisir, ce sont des nombres incrémentées automatiquement qui commencent par 1.

Voici mes deux tables remplies. Ne sont-elles pas jolies ?

Nous avons bien notre Damien DUPONT en classe 3, c’est à dire en CE2.

Grâce à la relation crée précédemment, nous pouvons consulter la liste des élèves par classe. Ces données sont accessibles par le petit + sur chaque donnée de la table CLASSE.

Table CLASSE avec sa liste d’élèves

Nous allons tester si l’intégrité référentielle. Nous allons essayer de mettre notre élève Damien DUPONT dans une classe 6. Comme vous pouvez le constater, cette classe n’existe pas. En toute logique, il est impossible de mettre notre petit Damien en classe 6.

Dans la table ELEVE, nous allons donc à la ligne avec l’identifiant 2 et nous allons mettre 6 à la place de 3 dans la colonne NumClasse de cette ligne. A peine je valide ma donnée modifiée que cette boite de dialogue.

Erreur dû à l’intégrité référentielle

Notre intégrité référentielle marche bien. Nous avons tous bon.


Cette article signe la conclusion de notre série consacrée aux bases de données. Je tiens à remercier tous mes lecteurs, j’ai été ravie de faire ces articles pour vous. Si vous avez besoin de revoir avec moi plus précisément certains points où d’aller plus loin n’hésitez pas à me contacter. Je me ferais un plaisir de vous répondre.

Laisser un commentaire

%d blogueurs aiment cette page :