Académique Documents
Professionnel Documents
Culture Documents
Séance 2
Amal EL MZABI
Relations entre les tables d’une BD
Livres
Nom Auteur
Prénom Auteur
Nationalité auteur
Titre
Nbre pages
Année d’édition
Éditeur
2
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
3
Trouver un moyen pour savoir exactement à Auteurs
4
Définitions
5
Relation un-à-un
6
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
1 1
Num_permis Immatricule
Nom Marque
Prénom Couleur
Ville Puissance
Table 2
Table 1
Enregistrement 1
Enregistrement 1
Enregistrement 2
Enregistrement 2
Enregistrement 3
Enregistrement 4
Enregistrement 5
Clé secondaire
Clé primaire
Auteurs Livres
1 n
N° Auteur N° Auteur
9
Exemple 2
10
Relation Plusieurs à Plusieurs (n - m)
Exemple
Table Auteur
Table Livre
15
Outils de base de données → Relations
16
Afficher la table → Ajouter Auteur + Ajouter Livre → Fermer
17
Glisser N°auteur (table auteur) vers N°auteur (table Livre)
18
Cette relation signifie qu’un auteur peut être
associé à plusieurs livres et un livre est
associé à un seul auteur.
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.
20
Prenons l'exemple de gestion Fournisseurs/Produits : un fournisseur
fournit plusieurs produits.
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. 22
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 : Clients
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 10/3/2012 350200
124 3 12/1/2013 16I890
125 2 10/4/2013 680000
124 4 2/11/2014 255000
24
✓ Pour table Client :
Le 2ème enregistrement car le champ « IdClient » étant
la clé primaire ne peut pas être vide ou nulle.
25
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.
26
Application 3: Base de données
« Gestion de Commandes »
La BD « Gestion de commandes », qui sera utilisée pour le reste du
cours, contient les quatre tables suivantes : Clients, Commandes,
Produits et Détails_Commande, dont le schéma relationnel est :
27
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
28
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 extraite 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.
29
Requête sélection
31
On obtient ensuite l’interface suivante:
Remarque :
Une requête qui exploite une seule table est dite requête
monotable ou simple
32
Structure et paramétrage d’une requête de sélection
Nom de la
requête
Liste des
champs
Les
paramètres
de la requête