Vous êtes sur la page 1sur 32

Cours 11

Introduction à Access
Algèbre relationnelle

Pierre Delisle
Université du Québec à Chicoutimi
Département d’informatique et de mathématique
Plan
 Introduction à Access
 Historique
 Utilisation
 Création d’une base de données avec Access,
partie 1
 Création des tables
 Création des relations
 Algèbre relationnelle

2
Qu’est-ce qu’Access ?
 Système de Gestion de Bases de Données
Relationnelles (SGBDR)
 Fait partie de la famille de logiciels Microsoft
Office
 Word : Traitement de texte
 Excel : Tableur électronique
 PowerPoint : Éditeur de présentations
 Outlook : Agenda-Courriel
 Access : Bases de données personnelles

3
Historique d’Access
 1992 : Access 1.0
 1993 : Access 2.0
 Tournait sur Windows 3.0
 Nécessitait 4 Mo de RAM et 8 Mo de disque dur !
 1995 : Access 7 pour Windows95 (Office 95-Word 7)
 1997 : Access 97 (Office 97)
 1999 : Access 2000 (Office 2000)
 2001 : Access 2001 (Office XP)
 2003 : Access 2003 (2003 Microsoft Office System)
 2007 : Microsoft Office Access 2007 (2007 Microsoft
Office System
 Nécessite 256 Mo de RAM et 1.5 Go de disque dur !
4
Compétiteurs d’Access
 dBase – Années 1980-1990

5
Compétiteurs d’Access
 Paradox
 1987-…
 Développé originalement par Borland
 Fait maintenant partie de Corel Word Perfect Office
 FileMaker Pro
 1985-…
 OpenOffice.org Base
 2001-…
 Fait partie de la suite bureautique OpenOffice.org
 Logiciel Gratuit (GPL - General Public License)

6
Utilisation d’Access
 Démarrage
 Création d’une BD
 Fichier vide
 Modèle
 Les modes d’ouverture d’une BD
 Normal (mode par défaut): Consultation et Modification
de la BD, mono/multi utilisateur
 Lecture seule : Consultation seulement
 Exclusif : mono-utilisateur seulement, personne d’autre
ne peut ouvrir la BD en même temps
 Lecture seule exclusif

7
Utilisation d’Access
 La Barre de menus
 Accueil
 Créer
 Données externes
 Outils de bases de données
 Conseil d’utilisation
 Faites régulièrement des copies de sauvegarde !

8
Principaux éléments d’Access
 Tables
 Stockage des données
 Relations
 Liens entre les tables
 Requêtes
 Opérations sur les tables afin d’extraire de l’information
 Formulaires
 Interfaces-utilisateur d’entrée, de modification, d’affichage et
de traitement des données
 États
 Affichage de récapitulatifs (factures, commandes, rapports,
etc.), attrayants et imprimables
 Macros
 Liste de commandes pouvant être enregistrées et exécutées
par Access 9
Centre Sportif Peter inc. – Modèle
relationnel formel en FNBC
CLIENT (NoClient, Nom, Prenom, Statut)
REDUC_CLIENT (Statut, Reduction)
SALLE (NoSalle, Description)
RESERVATION (NoClient, NoSalle, DateDebut, DateFin)
COUT_RESERV (DateDebut, Cout)
AUTOR_SALLE (NoSalle, DateDebut, Autorisation)
FORFAIT (NoForfait, DateDebut, DateFin, Prix)
CARTE (NoClient, NoForfait)
ACTIVITÉ (NoActivité, Description, NoSalle)
ACTIVITÉ FORFAITAIRE (NoForfait, NoActivite)
ACT_EN_COURS (NoSalle, NoActivité)
GROUPE (NoGroupe, Description, DateDebut, DateFin, NoActivite)
EMPLOYE (NoEmploye, Nom, Prenom)
AFFECTATION (NoGroupe, NoEmploye)
COMPETENCE (NoEmploye, NoActivite, Fonction)
10
Création d’une BD avec Access-Partie 1

 Création des tables


 Création des relations

11
Création des tables
 Champ
 Unité de données la plus petite dans la BD
 ≈ Attribut ≈ Colonne ≈ Élément de données
 Enregistrement
 Ensemble des valeurs attribués aux champs d’une table
pour une occurrence donnée
 ≈ Ligne ≈ Tuple ≈ Occurrence (du MCD)
 Clé primaire
 Champ (ou groupe de champs) qui identifie de façon
unique chaque enregistrement d’une table
 ≈ Identifiant (du MCD)

12
Création des tables
 2 façons
 Par entrée de données
 En mode création (recommandé)
 Entrée des données
 En mode feuille de données
 Assistant Liste de choix

13
Création des relations
 Relation
 Connexion entre 2 tables apparentées où 2 champs
partagent les mêmes données
 Passe par les clés étrangères
 Outil graphique de création de relation
 Intégrité référentielle
 Protège les données
 Une clé étrangère doit toujours correspondre à une clé
primaire
 Empêche de supprimer/modifier une clé primaire si des
clés étrangères y sont associées dans d’autres tables
 Évite les enregistrements « orphelins »

14
Fin de Access – Partie 1
 Prochain cours
 Requêtes
 Formulaires
 États

 Mais avant, il faut comprendre les bases de


l’algèbre relationnelle !

15
Algèbre relationnelle
 Chaque opération d’algèbre relationnelle
prend une/plusieurs tables et les transforme
afin de produire une nouvelle table
 3 opérations principales
 Sélection
 Projection
 Jointure
 3 opérations secondaires
 Union
 Intersection
 Différence

16
Tables des exemples - ÉTUDIANT
ÉTUDIANT
Nom Prénom AnnéeNais MoisNais JourNais Université

Girard Martin 1975 04 23 UQAC

Tremblay Isabelle 1977 07 12 ULaval

Godin Patrice 1972 02 18 UDM

Bouchard Martin 1977 06 28 UDM

Girard Julie 1980 10 22 UQAM

17
Tables des exemples - UNIVERSITÉ
UNIVERSITÉ
Sigle NomInstitution Ville NbrÉtudiants

UQAC Université du Québec à Chicoutimi 4000


Chicoutimi

UQAC Université du Québec à Montréal 12000


Montréal

UDM Université de Montréal Montréal 11000

ULaval Université Laval Québec 8000

18
Tables des exemples - VILLE
VILLE

Nom Région

Chicoutimi Saguenay-Lac-St-
Jean

Montréal Montréal

Québec Québec

19
Sélection
 S’effectue sur une seule table
 Produit une nouvelle table étant un sous-
ensemble de la table originale selon des
critères appliqués sur certains champs
 Opérateur : σ
 Format
 σ (table source) [critères]

20
Sélection - Exemples
 σ (ÉTUDIANT) [Nom = "Girard"]
Nom Prénom AnnéeNais MoisNais JourNais Université
Girard Martin 1975 04 23 UQAC
Girard Julie 1980 10 22 UQAM

 La liste des étudiants dont le nom de famille est "Girard"

 σ (ÉTUDIANT) [Université = "ULaval"]


Nom Prénom AnnéeNais MoisNais JourNais Université
Tremblay Isabelle 1977 07 12 ULaval

 La liste des étudiants inscrits à l’Université Laval

21
Sélection - Exemples
 Exemple de sélection donnant une table vide

 σ (ÉTUDIANT) [AnnéeNais = 1979]

Nom Prénom AnnéeNais MoisNais JourNais Université

 La liste des étudiants nés en 1979

22
Sélection – Exemples avec 2 critères
(OU et ET)
 σ (ÉTUDIANT) [AnnéeNais = 1977 ET Université = "UDM"]

Nom Prénom AnnéeNais MoisNais JourNais Université


Bouchard Martin 1977 06 28 UDM

 La liste des étudiants nés en 1977 et inscrits à l’Université Laval

 σ (ÉTUDIANT) [Université = "UQAC" OU Université = "UDM"]

Nom Prénom AnnéeNais MoisNais JourNais Université


Girard Martin 1975 04 23 UQAC
Bouchard Martin 1977 06 28 UDM

 La liste des étudiants inscrits à l’UQAC ou à l’UDM

23
Sélection – Exemples avec 3 critères
(Les parenthèses sont importantes !)
 σ (ÉTUDIANT) [(Université = "UDM" OU Université = "ULaval" ) ET AnnéeNais = 1977]

Nom Prénom AnnéeNais MoisNais JourNais Université


Tremblay Isabelle 1977 07 12 ULaval
Bouchard Martin 1977 06 28 UDM

 La liste des étudiants inscrits à l’UDM ou à ULaval et qui sont nés en 1977

 σ (ÉTUDIANT) [Université = "UDM" OU (Université = "ULaval" ET AnnéeNais = 1977)]

Nom Prénom AnnéeNais MoisNais JourNais Université


Tremblay Isabelle 1977 07 12 ULaval
Godin Patrice 1972 02 18 UDM
Bouchard Martin 1977 06 28 UDM
 La liste des étudiants inscrits à l’UDM ou ceux qui sont en même temps
inscrits à ULaval et nés en 1977
24
Sélection – Exemples basés sur un
critère d’inégalité et sur critère partiel
 σ (ÉTUDIANT) [AnnéeNais < 1976]
Nom Prénom AnnéeNais MoisNais JourNais Université
Girard Martin 1975 04 23 UQAC
Godin Patrice 1972 02 18 UDM
 La liste des étudiants nés avant 1976

 σ (ÉTUDIANT) [Nom = "G*"]


Nom Prénom AnnéeNais MoisNais JourNais Université
Girard Martin 1975 04 23 UQAC
Godin Patrice 1972 02 18 UDM
Girard Julie 1980 10 22 UQAM

 La liste des étudiants dont le nom de famille commence par G


25
Projection
 S’effectue sur une seule table
 Produit une nouvelle table qui est un sous-
ensemble de la table originale selon un ou
des champs sélectionnés
 Sert à déterminer quelles données seront
présentées comme résultat de la requête
 Opérateur : 
 Format
  {champs} (table source)

26
Projection simple
  {Nom} (ÉTUDIANT)
Nom
Girard
Tremblay
Godin
Bouchard

 La liste des noms de famille des étudiants

 Note : les éléments identiques sont éliminés


 Une table ne doit jamais contenir deux tuples identiques

27
Projection sur plusieurs champs
  {Nom, Prénom, Université} (ÉTUDIANT)
Nom Prénom Université
Girard Martin UQAC
Tremblay Isabelle ULaval
Godin Patrice UDM
Bouchard Martin UDM
Girard Julie UQAM

 La liste des étudiants avec l’Université où ils sont inscrits

28
Jointure
 Jointure naturelle
 Opération s’effectuant sur 2 tables ayant au moins un
champ commun (de même domaine)
 Produit une nouvelle table qui est une combinaison des
2 tables originales selon l’égalité des champs communs
 Permet de créer de l’information qui ne se trouve pas
dans une seule table, mais par la combinaison de deux
tables
 Opérateur : 
 Format
 table 1 [champs1  champs2] table 2

29
Jointure = Exemple
 ÉTUDIANT [Université  Sigle] UNIVERSITÉ
Nom Prénom AnnéeNais MoisNais JourNais Université NomInstitu Ville NbrÉtudi
tion ants
Girard Martin 1975 04 23 UQAC Université Chicoutimi 4000
du Québec
à
Chicoutimi
Tremblay Isabelle 1977 07 12 ULaval Université Québec 8000
Laval

Godin Patrice 1972 02 18 UDM Université Montréal 11000


de
Montréal
Bouchard Martin 1977 06 28 UDM Université Montréal 11000
de
Montréal
Girard Julie 1980 10 22 UQAM Université Montréal 12000
du Québec
à Montréal

Note : le nom du champ peut être le même ou différent, en autant que les domaines soient identiques 30
Notes sur les jointures
 Si aucun champ n’est commun (de même
domaine/type) entre 2 tables, la jointure est
impossible
 Si un champ est commun mais qu’il n’y a aucune
donnée commune, alors la jointure donne une table
vide
 Jointure universelle
 Opération s’effectuant sur 2 tables et qui fait la jointure
entre tous les tuples de 2 tables
 Aucun attribut commun n’est requis
 Opération aussi appelée « Produit cartésien »
 Produit une suite de faux tuples, donc n’est pas utile, mais
permet de détecter des erreurs dans la BD (vu plus tard)

31
Des questions ?

32

Vous aimerez peut-être aussi