Introduction aux bases de données Access
Introduction aux bases de données Access
1
27/03/2024
Plan
1. Définition d’une base données
2. Principales fonctions d’une base de données
3. Bases de données relationnelles
4. Système de Gestion de Base des données
5. Création d’une base de données sur le SGBD
Microsoft Access
6. Table, Champs, Enregistrement et Clés
7. Types de relations
8. Requêtes (QBE et SQL)
Définition
optimale.
2
27/03/2024
Caractéristiques d’une BD
3
27/03/2024
• Recherche facile
4
27/03/2024
10
5
27/03/2024
11
12
6
27/03/2024
Commandes
Nu_cmd
Code_Client Champs
Date_cmd
Cmd_réglée
Remarques
7
27/03/2024
2. La modélisation.
15
8
27/03/2024
Exemple
Identifiants
17
Clé primaire
Une table peut posséder plusieurs identifiants. On choisit l'un
d'eux, qu'on déclare clé primaire. Les autres sont dès lors des
identifiants secondaires.
Une clé peut être simple (un seul champ) ou composée (plusieurs
champs), et ne peut être jamais nulle ou répétée
Clé étrangère
Un champ (ou ensemble de champs) est clé étrangère dans une table
s’il fait référence à une clé primaire dans une autre table.
9
27/03/2024
Clé primaire
Clé étrangère
19
Exemple de SGBDR :
ACCESS pour gérer des petites bases de données.
ORACLE, très performant pour les grandes BD mais coute très cher
SQLSERVER, outils de Microsoft concurrent de oracle (coute cher)
MYSQL, performant et gratuit 20
10
27/03/2024
Règles de gestion
21
22
11
27/03/2024
23
24
12
27/03/2024
25
Autres composantes:
sur la base ;
13
27/03/2024
27
28
14
27/03/2024
29
30
15
27/03/2024
31
16
27/03/2024
Propriétés
17
27/03/2024
Mode de création
Mode d’affichage
35
Livres
Nom Auteur
Prénom Auteur
Nationalité auteur
Titre
Nbre pages
Année d’édition
Éditeur
36
18
27/03/2024
Il est plus judicieux de créer ici deux tables, il faut toujours regrouper dans
une même table toutes les informations relatives au même « sujet »
Auteurs
Nom Auteur
Livres
Prénom Auteur
Nom Auteur
Prénom Auteur Date de naissance
37
38
19
27/03/2024
Définitions
39
Relation un-à-un
40
20
27/03/2024
Table 1 Table 2
Enregistrement 1 Enregistrement 1
Enregistrement 2 Enregistrement 2
Enregistrement 3 Enregistrement 3
Enregistrement 4 Enregistrement 4
Enregistrement 5 Enregistrement 5
Exemple
Possède
Personne Voiture
Num_permis
1 1
Immatricule
Nom Marque
Prénom Couleur
Ville Puissance
Relation un à plusieurs (1 à n)
Table 2
Table 1
Enregistrement 1
Enregistrement 1
Enregistrement 2
Enregistrement 2
Enregistrement 3
Enregistrement 4
Enregistrement 5
21
27/03/2024
Exemple 1
Clé secondaire
Clé primaire
Auteurs Livres
1 n
N° Auteur N° Auteur
43
Exemple 2
44
22
27/03/2024
Exemple
23
27/03/2024
24
27/03/2024
Exemple
Table Auteur
Table Livre
49
50
25
27/03/2024
51
52
26
27/03/2024
L’intégrité référentielle
Un ensemble de règles suivies par Access pour gérer les relations
entre tables et éviter des incohérences dans une base de données.
Elle empêche de supprimer accidentellement des enregistrements dans
une table mère quand il existe des enregistrements correspondants
dans la table Fille.
54
27
27/03/2024
Effacer en cascade
Si cette option est cochée et que vous supprimez un fournisseur,
tous ses produits seront automatiquement détruites.
Inversement, si la case n'est pas cochée, il sera impossible de
supprimer un fournisseur tant que tous ses produits n'ont pas été
détruites. 56
28
27/03/2024
Application 1
Un service financier réalise un audit de données bancaires. Le
schéma relationnel de ces données est le suivant :
Table : Client
IdClient Nom Prenom Ville Tél
1 Amine Casablanca 0663562773
Salim Rajae Tanger 0662152435
3 Amine Jamal Agadir 0661661610
4 Nasri Reda Tanger 0670263560
Table : Compte
IdCompte IdClient DateCréation Solde
123 1 1/3/2012 350200
124 3 2/1/2013 16K890
125 2 10/4/2013 680000
124 4 2/1/2014 25000
58
29
27/03/2024
Application 2
Le responsable du complexe cinématographique a mis en place cette
base de données afin de gérer les projections des films dans les
différentes salles de cinéma :
Acteur (Num_acteur, Nom, Prénom)
Jouer (Num_acteur, Num_Film, Rôle)
Film (Num_Film, Titre, Genre, Année)
Projection (Num_Ciné, Num_Film, Date)
Cinéma (Num_Ciné, Nom, Adresse)
1. Quelles sont les clés primaires et les clés secondaires de chaque
table ? Justifiez votre réponse.
2. Tracez les relations entre les tables de cette base de donnée.
59
60
30
27/03/2024
Les requêtes
La requête est une action qui porte sur plusieurs
enregistrements. Elle sert à exploiter les données contenues
dans les tables.
Elle permet de:
Trier des données
Extraire des données par critères
Produire des calculs
Créer, Modifier des tables
Le SGBD Access permet de créer des requêtes en utilisant
soit une interface graphique QBE, soit le langage SQL
61
Types de requêtes
La requête sélection : Elle permet de sélectionner des
enregistrements qui répondent aux critères demandés, de faire des
calculs et des regroupements. Elles ressemblent beaucoup aux filtres,
mais permettent, en plus, de travailler sur plusieurs tables simultanément.
La requête d'Analyse croisée : Cette requête présente ses résultats
sous forme de tableau (de type Excel). On l'utilisera pour comparer des
valeurs, dégager des tendances.
La requête de Création de table : Cette requête crée une table à
partir des données qu'elle a extraites dans une ou plusieurs autres tables.
La requête Mise à Jour : Elle modifie le contenu d'un ou plusieurs
champs d'une ou plusieurs tables. C'est le moyen le plus efficace pour
mettre à jour un grand nombre d'enregistrements en une seule opération.
La requête Ajout : Cette requête ajoute les données qu'elle a
extraites à la fin d'une table déjà existante.
La requête Suppression : Cette requête supprime un ou plusieurs
enregistrements dans une ou plusieurs tables.
62
31
27/03/2024
Requête sélection
64
32
27/03/2024
Remarque :
Une requête qui exploite une seule table est dite requête
monotable ou simple
65
Nom de la
requête
Liste des
champs
Les
paramètres
de la requête
33
27/03/2024
34
27/03/2024
Access met à notre disposition en plus des opérateurs (=, <>, <, >, <=,
>=), les opérateurs suivants:
35
27/03/2024
36
27/03/2024
73
Exemple 2
Afficher le code, le nom et le prénom des clients dont le nom ne
commence ni par « A » ni par « S » et qui sont de Casablanca ou
Mohammedia.
Cette requête sert à voir les caractères spéciaux tel que " * " et "?".
Le caractère "?" est utile pour remplacer un caractère dans la
requête. Par exemple, une recherche sur b?lle pourrait donner les
résultats suivants: balle, belle, bille, bulle.
37
27/03/2024
Pour le critère du champ "Nom", écrire seulement Pas A* et Pas S*. Access
se chargera d’ajouter Comme et les guillemets pour indiquer que les
enregistrements recherchés ne commencent ni par « A » ni par « S ».
75
38
27/03/2024
CLAUSE Explication
SELECT Liste les champs ou calculs à afficher ou
restituer
FROM Liste les tables nécessaires à
l'interrogation
WHERE Liste des conditions limitant la
recherche d'information. N'apparaît
qu'une fois
AND Précise que les conditions se cumulent
39
27/03/2024
79
Exemples
On reprend les exemples précédents en mode SQL
80
40
27/03/2024
Ou bien :
82
41
27/03/2024
Alias
83
Fonction Signification
Jour(Date) Affiche le jour de la date en paramètre
Mois(Date) Affiche le mois de la date en
paramètre
Année(Date) Affiche l’année de la date en
paramètre
Date() Affiche la date d’aujourd’hui (du
système)
Affiche la différence en nombre
Diffdate("format"; date1; d’années, de jours, de mois, de
date2) trimestres,… entre la date « date1 » et
la date « date2 ».
Format(Date; "format") Affiche le mois/jour de la date en
lettres alphabétiques. 84
42
27/03/2024
Remarque :
Exemple :
86
43
27/03/2024
Exemple :
Dans la BD « Gestion des commandes », on souhaite afficher le
code du client, le numéro et la date de leurs commandes faites au
cours du premier trimestre de l’année 2019 : Alias
Ou
87
Fonction Signification
Day(Date) Affiche le jour de la date en paramètre
Month(Date) Affiche le mois de la date en
paramètre
Year(Date) Affiche l’année de la date en
paramètre
Date() Affiche la date d’aujourd’hui (du
système)
Affiche la différence en nombre
Datediff("format", date1, d’années, de jours, de mois, de
date2) trimestres,… entre la date « date1 » et
la date « date2 ».
Format(Date, "format") Affiche le mois/jour de la date en
lettres alphabétiques. 88
44
27/03/2024
Remarque :
Ou bien :
45
27/03/2024
Ou
Alias
46