Vous êtes sur la page 1sur 44

1

Objectifs de la manipulation:
1. Création d’une BD et des tables
2. Saisie des données directe et par formulaires
3. Les états
4. Les requêtes de sélection, d’ajout, de mise à jour et
de suppression
5. Les relations x:1-x:n et x:n-x:n

2
1- Créer une BD

Ouvrir Access 2010 – Nouveau – Base de données vide – Nom de ficher = BDClient 3
1- Créer une BD

Une table se crée automatiquement nommée Table 1, ouverte sur le mode feuille de
données, qui permet de saisir les données 4
2- Création et paramétrage d’une table

On choisit le mode création pour paramétrer la table.


D’abord on saisit le nom de la table = Client

5
2- Création et paramétrage d’une table

- On saisit les différents champs de la table, comme précisé par le modèle MLD:
Client(NoClt, CiviliteClt, NomClt, PrenomClt, ,AdresseClt, CPclt, VilleClt, TelClt, EmailClt,
DateNaissanceClt)

- Pour chaque champ on précise le type de données souhaité (texte, numérique, date/heure,
….).
6
2- Création et paramétrage d’une table

-Pour la civilité, on choisit liste de choix pour tapez M, Mme et Mlle. On choisit limiter à la
saisie pour ne pas donner d’autres choix et on ne sélectionne pas autoriser plusieurs
valeurs. 7
2- Création et paramétrage d’une table

- Le type de données est redevenu texte, mais dans l’onglet Liste de choix, on retrouve ce qui
a été saisi.
- Le nom, prénom et adresse sont laissés par défaut (type texte)

8
2- Création et paramétrage d’une table

- Pour le code postal, on laisse le type texte et on applique un masque de saisi. Cela permet
de saisir un format bien précis. Dans ce cas le code postal est composé de 5 chiffre. Pour
cela, on tape 99999 dans le masque de saisi
- Même chose pour le téléphone, 99 99 99 99 99. On peut mettre des tirets ou des points à
la place des espaces
- NB: on ne choisit pas le type Numero car les numéros ne peuvent pas commencer par 0
9
2- Création et paramétrage d’une table

- Pour la date de naissance, on choisit le type date/heure et on applique un masque de


saisi. En cliquant sur les pointillés, on a plusieurs formats possibles. On choisit date
abrégée
10
2- Création et paramétrage d’une table

- On revient au No, qu’on nomme NoClt et qui possède le type NumeroAuto et le symbole
de la clé primaire.
- Access 2010 génère automatiquement un numéro unique incrémenté à la création de
chaque enregistrement, même si un enregistrement est supprimé.
- Ce numéro ne peut ni être changé ni être supprimé.
- La table est maintenant paramétrée, on l’enregistre
11
2- Saisie directe des données d’une table

- On choisit onglet Affichage - mode feuille de données.


- On saisit les informations souhaitées.
- Access 2010 attribue automatiquement le NoClt après chaque saisie.
- Après la suppression d’un enregistrement, le NoClt est incrémenté sans tenir compte de
la suppression

12
2– Saisie de données par les formulaires
- Rôle du formulaire: permet de saisir les données d’une façon plus conviviale qu’avec le
mode saisie de données
- Il permet aussi de saisir dans plusieurs tables en même temps

1
2
3
4

- On choisit la table souhaitée


- Le bouton 1 (bouton 3) sélectionne (désélectionne) le champ en surbrillance, le bouton 2
(bouton 4) sélectionne (désélectionne) tous les champs
- On sélectionne tous les champs, puis on enlève NoClt, car il est attribué automatiquement
13
2– Saisie de données par les formulaires

- On choisit la disposition souhaitée et on nomme le formulaire FormClient.


- On clic sur terminer
- On obtient le formulaire avec les enregistrements déjà
présents pour modifier si besoin.
- La barre en bas du bouton permet de naviguer d’un
enregistrement à un autre
Premier et dernier

Précédent et suivant
14
Nouvel enregistrement
2– Saisie de données par les formulaires
- Modifier l’apparence du formulaire
en cliquant sur Affichage - mode création

- Changer thème, couleur,


police, emplacement des
éléments, insérer logo,
réduire les tailles des
cases….
15
2– Saisie de données par les formulaires

- Passer par Affichage - mode formulaire pour continuer la saisie

16
3– Les états
- Rôle des états: permettent de mettre en page et synthétiser les données afin de les
imprimer

- Pour créer un état, on sélectionne l’onglet créer - Assistant état


- On obtient la même boîte de dialogue que pour la création des formulaires
- On choisit la table ou la requête souhaitée,
- puis les champs qu’on veut imprimer

17
3– Les états

- On peut ajouter des niveaux de regroupement qui permettent d’insérer le total


- On peut choisir de trier selon plusieurs champs
(exemple: trier selon nom, puis prénom)
- On peut trier en ordre croissant (du plus petit au
plus grand) ou décroissant (du plus grand au plus petit)
- On peut choisir la disposition et l’orientation
souhaitées pour la mise en page

18
3– Les états
- On donne un nom à l’état crée, puis terminer

- On obtient l’état tel qu’il sera après


impression
- Puisqu’on a effectué un tri selon le
nom et le prénom, ils apparaissent en
premier
- Certains champs ne sont pas visibles
en entiers
- Pour modifier cela, on clic sur fermer
aperçu avant impression
- On se retrouve directement en mode
création 19
3– Les états

- Comme pour le formulaire, on peut éditer à souhait le style de l’état en agrandissant les
cases des champs, en changeant couleur, police et style à volonté.
- On peut insérer des logos ou des images, avoir la date et le numéro de page

- On clic sur Affichage - Aperçu


avant impression pour
visualiser les changements
- On clic sur Affichage- mode
création pour modifier une
autre fois l’apparence

20
4- Les requêtes

- Rôle des requêtes: permettent de filtrer les informations des tables


- Onglet Créer- Création de requête

- On choisit la table souhaitée. On obtient une fenêtre Requête1

21
4- Les requêtes

- On a plusieurs types de requêtes qui s’affichent dans l’onglet type de requête


4.1 – Requêtes de sélection

- Rôle requêtes de sélection: Permettent de sélectionner les enregistrements suivant


certains critères
- Afficher toutes les informations sur les clients habitant Agadir, sauf le NoClient
- Dans la partie critère du champ ville , on met =Agadir
- Clic sur exécuter, situé dans l’onglet en haut 22
4.1 – Requêtes de sélection

- On obtient le résultat souhaité dans la fenêtre Requête 1

- On souhaite connaitre les clients qui habite Agadir ou Rabat


- On clic sur Affichage-mode création dans la fenêtre Requête 1 et on ajoute dans la ligne
OU =Rabat, puis exécuter 23
4.1 – Requêtes de sélection

- On obtient le résultat souhaité dans la fenêtre Requête 1

- On souhaite connaitre tous les clients qui sont nés entre 1980 et 1985
- On vide les critères déjà remplis et on saisit dans le champ de la date de naissance
>31/12/1979 et < 01/01/1986 puis on clic sur exécuter
24
4.1 – Requêtes de sélection

- On peut enregistrer la requête en cliquant droit sur la fenêtre Requête 1 et la nommer


pour la réutiliser
- Les requêtes se mettent à jour automatiquement en incluant les nouveaux
enregistrements ajoutés et adaptés aux critères , quand on les exécutent à nouveau.

Icône de la requête de sélection dans la barre latérale


25
4.2 – Requêtes d’ajout

- Rôle requêtes d’ajout: Ajouter les enregistrement d’une table dans une autre table, selon
un ou plusieurs critères. On prend un exemple:
- On souhaite créer une table des clients âgés qui sont nés avant le 01/01/1956
- Pour cela, on crée une nouvelle table, qu’on nomme ClientAge, avec les champs: No,
nom, prenom, date de naissance et contact.
- On crée dans la nouvelle table (ClientAge) une requête: onglet créer -création de
requête
- On choisit la table Client, puis on sélectionne tous les champs et on ajoute le critère
(< 01/01/1956) dans la date de naissance
- On nomme et enregistre la requête 26
4.2 – Requêtes d’ajout
- On clic sur l’onglet créer pour cette requête
- On est en type de requête Sélection,
- On clic sur le type Ajout

- On choisit la table ClientAge, puis OK

- On a une nouvelle propriété qui apparait: Ajouter à. Elle sert à effectuer la correspondance
entre un champ de Client et celui de ClientAge
- On clic sur Exécuter
- Un message affiche qu’on va ajouter un certain nombre de lignes
- On retrouve ses lignes dans la table ClientAge

27
4.2 – Requêtes d’ajout

- Si on ajoute un nouveau client né avant 01/01/1956 dans Client, il faut fermer la


requête, puis double cliquer dessus pour l ’exécuter
- On obtient un message d’erreur car Access 2010 veut ajouter encore une autre fois les
enregistrements déjà présents, alors que la clé primaire ne peut pas avoir 2 fois la
même valeur.
- On clic sur oui, alors on ajoute que les enregistrements qui ne sont pas déjà présents
dans la table ClientAge
- Si on n’avait pas de clé primaire, il va ajouter 2 fois les mêmes enregistrements (on
aura des doublons)

28
4.2 – Requêtes d’ajout
Remarque importante:
- Si on modifie la valeur d’un champ d’un enregistrement dans la table Client (par exemple
un nom) et que celui-ci est déjà présent dans la table ClientAge
- Lorsqu’on exécute la requête, cette valeur du champ ne sera pas prise en compte dans la
table ClientAge,
- Cela est dû au fait qu’on n’ajoutera pas ce nouvel enregistrement mais il existe déjà dans
la table ClientAge
Exemple:
- Dans Client:

- Dans ClientAge:

Une solution
- Il faut donc supprimer la table ClientAge, re-créer la table et puis ré-exécuter la requête

Icône de la requête d’ajout dans la barre latérale


29
4.3 – Requêtes de suppression

Rôle de la requête de suppression: supprimer un ou plusieurs enregistrements d’une table:


- Onglet Créer - Création de requête, puis choisir la table
- On sélectionne le champ dans lequel on rentre le critère de suppression
- Exemple: supprimer le client avec le code client numéro 1 (on peut choisir n’importe
quel critère)
- On clic sur l’onglet Suppression dans le type de requête
- On clic sur exécuter
- Un message demande si on souhaite effectivement supprimer des lignes, puis une autre
spécifie le nombre de ligne à supprimer, On accepte pour les deux

Icône de la requête de suppression dans la barre latérale


30
4.4 – Requêtes de mise à jour

Rôle de la requête de mise à jour: mettre à jour un ou plusieurs enregistrements d’une table
- Onglet Créer - Création de requête, puis choisir la table
- On sélectionne le champ dans lequel on rentre le critère de mise à jour
- Exemple: modifier le CP 10000 par 10002 (on peut choisir n’importe quel critère)
- On clic sur l’onglet Mise à jour dans le type de requête
- Une nouvelle propriété est ajouté Mise à jour, on y saisit la nouvelle valeur du champ à
mettre à jour (ici 10002)
- On clic sur exécuter
- Un message demande si on souhaite effectivement mettre à jour des lignes, on accepte

Icône de la requête de mise à jour dans la barre latérale


31
4.4 – Requêtes de mise à jour
- Autre exemple: mettre à jour la date de naissance du client
ALIA Aicha avec la date 01/05/1986
- On sélectionne le champ date de naissance
- Dans la propriété Mise à jour on introduit la nouvelle date
- Puisque le critère ne concerne pas le champ sélectionné, on
met entre [ ] le nom du champ sur lequel va porter le critère,
puis la valeur du critère. On met un ‘et’ car on introduit 2
critères (on met un ‘ou’ si l’un ou l’autre des critères est
valable)
[NomClt]=ALIA et [PrenomClt]=Aicha

32
4.5 – Requêtes de détection des doublons
- Pour détecter les enregistrements qui sont présents en
double (doublons) dans la table, on clic sur l’onglet créer –
assistant requête
- On choisit Assistant requête trouver les doublons, puis on
choisit la table et les champs qui peuvent contenir les
doublons (Il y a plusieurs personnes dans une ville, mais
pratiquement impossible d’avoir le même nom, prénom et
date de naissance)
- On choisit ensuite les champs à afficher après la requête
- Exemple:
- Si on sélectionne uniquement le champ nom, on obtient
comme doublons les personnes ayant le même nom
mais pas le même prénom.
- Si on veut détecter les clients rentrés en double, on
sélectionne nom, prénom et date de naissance.

33
5- Les relations sous Access
- Rôle des relations: Lorsqu’on souhaite lier 2 tables entre elles
- On étudie le MLD suivant déjà présenté dans le chapitre 2 du cours
- On commence par créer les tables Facture et Article, en plus de la table Client déjà
créée.
- Ensuite, on remplit ces 2 tables avec quelques enregistrements.

MCD

MLD 34
5- Les relations sous Access
5.1 – Association x:1-x:n

- Ensuite, on doit ajouter la clé primaire de Client (NoClt) dans la table Facture comme une
clé étrangère:
- On ajoute dans Facture un champ NoClt, de type numérique
- On enregistre et on ferme les 2 tables
- On clic sur Outils de base de données - Relations
- On a une nouvelle table de dialogue qui s’affiche où on sélectionne les tables à
mettre en relation (ici Client et Facture)
- On glisse le champ NoClt de la table Client vers le champ qui porte le même nom
dans la table Facture
- Une fenêtre s’affiche où on sélectionne appliquer l’intégrité référentielle.
- Rôle de l’intégrité référentielle : permet à Access de garantir que les relations entre
les enregistrements dans les tables liées sont valides et que les données liées ne
seront pas modifiées ou effacées par erreur 35
5.1 – Association x:1-x:n
- On clic sur créer et on obtient un schéma de la
relations 1,n (symbole infini au lieu de n)
- Ensuite, on ferme l’éditeur des relations et on
enregistre

- On ouvre la table Facture et on remplit les NoClt par des numéros de client déjà existants.
- Si on essaie de renter un NoClt qui n’existe pas, un message d’erreur s’affiche (grâce à
l’intégrité référentielle),
- En cas de sélection de l’intégrité référentielle, Il est donc impossible de renter dans la
table Facture un NoClt qui n’existe pas dans déjà dans la table Client.
36
5.1 – Association x:1-x:n
Remarque importante
- Lorsqu’on essaie d’ajouter une facture sans
NoClt, cela est possible.
- Cela aurait été utile si la cardinalité de
l’association entre Facture et Client est 0,1 du
côté Facture
- Dans notre schéma MCD, la cardinalité est de 1,1 du côté Facture.
- Avant d’ajouter un enregistrement dans Facture sans NoClt, il faut donc passer en mode
création pour Facture, puis dans Null interdit, choisir Oui.
- Ainsi, Lorsqu’on voudra introduire une facture sans NoClt, on aura un message d’erreur
qui nous l’interdira
- On pourra être sûr d’avoir respecté le modèle MCD conçu pour notre base de données

37
5.1 – Association x:1-x:n

- Dans la table Client, on a des symboles + ajouté à côté de chaque enregistrement.


- Quand on clic dessus, on obtient les enregistrement de la table Facture pour ce client
(si il a des factures)
- Grâce à l’intégrité référentielle, on ne peut pas supprimer de client si il a une facture

38
5.1 – Association x:1-x:n
- Si on souhaite supprimer des enregistrements de
client sans supprimer manuellement toutes les
factures qu’il a, on sélectionne outils de base de
données – Relations – double clic sur la relation
actuelle et on sélectionne les deux derniers
champs,

Dans ce cas, à la suppression du client, un message affiche que d’autres enregistrements


d’autres tables peuvent être supprimés aussi

39
5.2 – Association x:n-x:n

- On crée la nouvelle table Porter avec les champs NoArticle et NoFacture et quantité (les
trois en type numérique)
- A son enregistrement, on ne met pas de clé primaire et on ferme la table
- Ensuite, outils base de données – relations-afficher les tables, on choisit Article et
Porter (on a déjà Facture)
- On glisse le NoArticle d’Article vers le même champ de Porter et NoFacture de Facture
vers le même champ de Porter. On coche les 3 cases pour les fenêtres qui apparaitront

40
5.2 – Association x:n-x:n

- On obtient une table Porter avec 2 associations: une avec Facture et l’autre avec Article
- Ainsi, une facture peut contenir plusieurs articles et un article peut être inclus dans
plusieurs factures
- On ferme la fenêtre des relations,
- On ouvre la table Porter- mode création, on sélectionne les 2 clés étrangères en même
temps et on leur applique la clé primaire

41
5.2 – Association x:n-x:n

- On saisit quelques lignes dans cette table.


- On ne peut pas entrer des NoArticle ou NoFacture qui n’existent pas déjà,
- On ne peut pas entrer deux lignes avec le même NoArticle et NoFacture à la fois

42
5.3 – Requête sur une relation

- Exemple: On veut afficher les numéros et les dates des de factures de chaque client
(numéro, nom et prénom) ainsi que les noms des articles inclus et leur quantité, et on
trie selon le nom du client
- On ouvre Créer-Création de Requête-choisir les tables Client, Facture, Article et Porter
- on choisit, Dans client, : NoClt, NomClt (Trie) et PrenomClt. Dans Facture: NoFacture et
DateFacture. Dans Porter: Quantite
- Seuls les enregistrements ayant une valeur pour toutes les clés primaires des tables
sélectionnées sont affichées
- Exemple: La facture numéro 4 du client numéro 6 n’est pas affichée car elle ne contient
pas encore d’article. Lorsqu’on entre un article pour cette facture dans Porter et qu’on
ré-exécute cette requête, un nouveau enregistrement est affiché
43
Conclusion
Points à retenir:

- Etapes de création d’une base de données

- Etapes de création d’une table et différence entre mode feuille de


données et mode création

- Saisie des données dans les tables et les types de données les plus
importants

- Création des formulaires et états et leurs rôles

- Requêtes de sélection, d’ajout, de suppression et de mise à jour

- Construction des relations relatives aux associations x:1-x:n et x:n-


x:n 44

Vous aimerez peut-être aussi