Document 570830

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 50

08/10/2013

Conception bases de données

Tableur Vs BD
Modèle conceptuel
Modèle logique
Modèle physique
Requêtes
Importation / Transfert de données

Décembre 2012 - Sandrine AUZOUX, Thierry CHAPUSET

Avant propos

Pour la gestion des données….


Tout ce qu’il n’est pas possible de faire avec un tableur

Assurer la cohérence
Eviter les redondances
Pérenniser les données
Sécuriser les données
Partager les données

Formation bases de données – Décembre 2012 - Thiès

1
08/10/2013

Définition : base de données

Une base de données est un ensemble structuré et organisé


permettant le stockage d’information afin d’en faciliter l’exploitation.

L’organisation de l’information est régie par un modèle de données.

Différents types de modèles existent:


modèle hiérarchique

modèle réseau

modèle relationnel

modèle objet

Formation bases de données - Décembre 2012 - Thiès

Formation bases de données – Décembre 2012 - Thiès

2
08/10/2013

Définition : Système de Gestion de Base


de données
Le Système de Gestion de Bases de Données (SGBD) est un
logiciel jouant le rôle d’interface entre les utilisateurs et la base
de données.

Il permet de :
décrire la structure de la base de données (modèle de données)
mettre à jour la base de données
créer de requêtes pour interroger les données
sauvegarder et restaurer les données
veiller à l’intégrité des données
assurer la confidentialité et la sécurité des données
contrôles des accès concurrents (verrous en écriture)
définir les droits des utilisateurs (restrictions d’accès à la base de données)

Formation bases de données – Décembre 2012 - Thiès

Panel des SGBDs

Pro et commerciaux : Oracle, SQL Serveur, Sybase, DB2.

Pro et open-source : MySql et PosgreSQL

Informatique personnelle et individuelle :


Access, Interbase, OpenOfficeBase, SQLite
SGBD fichier , plutôt mono utilisateur
Nombreux assistants
Intégration avec Office

Formation bases de données – Décembre 2012 - Thiès

3
08/10/2013

Base de données Vs Tableur

Actions Tableur Base de Données


Utilisation principale Calculs Gestion des données

Structuration des données Aucune Structuration et cohérence forte

Contrôle d'intégrité des données Aucun Vérification stricte des valeurs


possibles de chaque donnée
Accès aux données Mono utilisateur Multi utilisateurs
Sécurité Faible à nulle Forte, limitée à 1 enregistrement

Confidentialité des données Aucun contrôle Vérification des droits d'accès de


chaque utilisateur
Taille des données - Une table - Plusieurs tables
- Quelques milliers de lignes - Plusieurs milliers de lignes par
table
Traitement sur les données Quantitatifs Qualitatifs et quantitatifs
Interrogation des données Réalisée par des procédures Langage "universel" : SQL
spécifiques
Formation bases de données - Décembre 2012 - Thiès

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


Système d’information manuel

Expression des besoins

Modèle conceptuel : modélisation formelle et


standardisée de la structure d’une base de données
sans se soucier du technique.

Modèle logique : modèle de données qu’un SGBD


est capables de gérer.

Modèle physique : modélisation de la structure


physique d’une base de données en tenant compte
du SGBD et du matériel utilisé.

Système d’information automatisé


Formation bases de données - Décembre 2012 - Thiès

4
08/10/2013

Méthodes de conception

MERISE (Méthode d’Etudes et de Réalisation Informatique


pour les Systèmes d’Entreprise,1978) basée sur le schéma
Entités-Associations (E.F. Codd 1969)

UML (Unified Modeling Language) (Booch, Rumbaugh,


Jacobson, 1996)

Formation bases de données - Décembre 2012 - Thiès

Expression des besoins

Exposé de la demande
Inventaire des données
Procédures
Règles de gestion
Documents de référence
Traitements

Formation bases de données - Décembre 2012 - Thiès

5
08/10/2013

Modèle Conceptuel de Données (MCD)


Entité (1/5)

Une entité est un ensemble d’éléments homogènes (ex:


personne)
Chaque élément est une occurrence (ex: bertrand muller)
Un attribut ou une propriété est une caractéristique associée à
une entité (ex : l’âge d’une personne, la surface d’une région...)
Un identifiant correspond à une ou plusieurs propriétés d’une
entité qui ont une valeur unique pour chaque occurrence (ex : le
numéro de sécurité sociale d’une personne) Libellé entité

Liste des attributs


.
.
.

Formation bases de données - Décembre 2012 - Thiès

Modèle Conceptuel de Données (MCD)


Association (2/5)

Une association (relation) est un lien sémantique entre plusieurs


entités.

Formation bases de données - Décembre 2012 - Thiès

6
08/10/2013

Modèle Conceptuel de Données (MCD)


Dimension, réflexivité (3/5)
La dimension d’une association est le nombre d’entités concernées par
celle-ci (nombre de pattes de l’association). Elle peut être binaire,
ternaire ou n-aire.

L’association réflexive est une association dont plusieurs « pattes »


lient la même entité. Dans ce cas, plusieurs occurrences de la même
entité seront associées.

Formation bases de données - Décembre 2012 - Thiès

Modèle Conceptuel de Données (MCD)


Cardinalités(4/5)
La cardinalité permet de caractériser le lien entre une entité et la
relation à laquelle elle est reliée.

La cardinalité d’une relation est composée d’un couple comportant


une borne maximale (1 ou n) et une borne minimale (0 ou 1).

Formation bases de données - Décembre 2012 - Thiès

7
08/10/2013

Modèle Conceptuel de Données (MCD)


Cardinalités (5/5)

Formation bases de données - Décembre 2012 - Thiès

Le dictionnaire des données


Inventaire exhaustif

Inventaire épuré, consiste à éliminer :


les propriétés inutiles (données calculées)
les synonymes (plusieurs propriétés de même nom)
les polysèmes (même propriété avec plusieurs noms)
les redondances (répétitions des mêmes propriétés)

Formation bases de données - Décembre 2012 - Thiès

8
08/10/2013

Exercice : Kilouplus
Création d’un MCD

1. Création du dictionnaire de données


2. Construction de la matrice des dépendances
fonctionnelles (tableau reprenant la liste des identifiants
et des propriétés)
3. Réalisation de la matrice des dépendances fonctionnelles
composées (même tableau que précédemment avec les
propriétés non définies)
4. Ecriture des dépendances fonctionnelles
5. Modèle conceptuel de données
Formation bases de données - Décembre 2012 - Thiès

Inventaire exhaustif
Propriétés Provenance Remarque
Code Client Liste clients Constitué des 3 lettres nom + 3 lettres prénom + département + Ordre A, B,….
Civilité Liste clients
Prenom Liste clients
Nom Liste clients
Adresse Liste clients
Code Postal Liste clients
Ville Liste clients
Code Codes Postaux
Code Postal Codes Postaux
Ville Codes Postaux
Code Liste des agences
Nom Liste des agences
Référence Catalogue
Désignation Catalogue
Tarif / Semaine Catalogue
Caution Catalogue
Code article Stocks
Nom Stocks
Quantité dispo / agence Stocks
Date Contrat
Nom de l'Agence Contrat
Numero contrat Contrat
Civilité Contrat
Prenom Contrat
Nom Contrat
Adresse Contrat
Code postal Contrat
Ville Contrat
Durée Contrat
Reference Contrat
Materiel Contrat
Montant Unitaire Contrat
Quantité Contrat
Montant total (ligne) Contrat
Total facture Contrat
Caution Contrat

Formation bases de données - Décembre 2012 - Thiès

9
08/10/2013

Polysèmes, Code
Civilité
Prenom
Code Client
Civilité
Prenom Client

Synonymes, Nom
Adresse
Code Postal
Nom Client
Adresse Client
Code Postal

Champs calculés Ville


Code
Code Postal
Ville
Code CP
Code Postal
Ville Ville
Code Code Agence
Nom Nom Agence
Référence Référence Materiel
Désignation Désignation
Tarif / Semaine Tarif / semaine
Caution Caution
Code article Référence Materiel
Nom Désignation
Quantité dispo / agence Quantité dispo / agence
Date Date Commande
Nom de l'Agence Nom Agence
Numero contrat Numero Contrat
Civilité Civilité
Prenom Prenom Client
Nom Nom Client
Adresse Adresse Client
Code postal Code Postal
Ville Ville
Durée Durée
Reference Référence Materiel
Materiel Désignation
Montant Unitaire Tarif / semaine
Quantité Quantité Louée
Montant total (ligne) Calculé
Total facture Calculé
Caution Calculé

Formation bases de données - Décembre 2012 - Thiès

Redondances Code Client


Civilité
Prenom Client
Code Client
Civilité
Prenom Client
Nom Client Nom Client
Adresse Client Adresse Client
Code Postal Code Postal
Ville Ville
Code CP Code CP
Code Postal
Ville
Code Agence Code Agence
Nom Agence Nom Agence
Référence Materiel Référence Materiel
Désignation Désignation
Tarif / semaine Tarif / semaine
Caution Caution
Référence Materiel
Désignation
Quantité dispo / agence Quantité dispo / agence
Date Commande Date Commande
Nom Agence
Numero Contrat Numero Contrat
Civilité
Prenom Client
Nom Client
Adresse Client
Code Postal
Ville
Durée Durée
Référence Materiel
Désignation
Tarif / semaine
Quantité Louée Quantité Louée
Calculé
Calculé
Calculé

Formation bases de données - Décembre 2012 - Thiès

10
08/10/2013

Recherche des identifiants naturels


Code Client Code Client
Civilité Civilité
Prenom Client Prenom Client
Nom Client Nom Client
Adresse Client Adresse Client
Code Postal Code Postal
Ville Ville
Code CP Code CP
Code Agence Code Agence
Nom Agence Nom Agence
Référence Materiel Référence Materiel
Désignation Désignation
Tarif / semaine Tarif / semaine
Caution Caution
Quantité dispo / agence Quantité dispo / agence
Date Commande Date Commande
Numero Contrat Numero Contrat
Durée Durée
Quantité Louée Quantité Louée

Formation bases de données - Décembre 2012 - Thiès

Matrice des dépendances fonctionnelles (simple)

Code Code Code Référence Numero


Propriétés Client CP Agence Materiel Contrat
Civilité
Prenom Client
Nom Client
Adresse Client
Code Postal
Ville
Nom Agence
Désignation
Tarif / semaine
Caution
Quantité dispo / agence
Date Commande
Durée
Quantité Louée

Connaissant une et une seule occurrence (valeur) de l'identifiant,


est-ce-que je connais une et une seule occurrence de la propriété ?

Formation bases de données - Décembre 2012 - Thiès

11
08/10/2013

Matrice des dépendances fonctionnelles (simple)

Code Code Code Référence Numero


Propriétés Client CP Agence Materiel Contrat
Civilité
Prenom Client
Nom Client
Adresse Client
Code Postal
Ville
Nom Agence
Désignation
Tarif / semaine
Caution
Quantité dispo / agence
Date Commande
Durée
Quantité Louée

Plusieurs cases cochées sur une même ligne = transitivité


Il faut choisir un et un seul identifiant par propriété.

Formation bases de données - Décembre 2012 - Thiès

Matrice des dépendances fonctionnelles composées

Code Code Code Référence Numero


Propriétés Client CP Agence Materiel Contrat

Quantité dispo / agence

Quantité Louée

Connaissant une et une seule occurrence de l'identifiant 1 et de l'identifiant 2, est-


ce-que je connais une et une seule occurrence de la propriété ?

Formation bases de données - Décembre 2012 - Thiès

12
08/10/2013

Entité
Matrice des dépendances fonctionnelles (simple)
CLIENT
Code Code Code Référence Numero
Propriétés Client CP Agence Materiel Contrat
Civilité
Prenom Client
Nom Client
Adresse Client
Code Postal
Ville
Nom Agence
Désignation
Tarif / semaine
Caution
Quantité dispo / agence
Date Commande
Durée
Quantité Louée

1. Mise en évidence des entités


2. Donner un label aux entités
Formation bases de données - Décembre 2012 - Thiès

Mise en évidence des Entités


et des Associations

La matrice des dépendances fonctionnelles met en


évidence les Entités.

La matrice des dépendances fonctionnelles


composées met en évidence les Associations
porteuses de Propriétés.

Formation bases de données - Décembre 2012 - Thiès

13
08/10/2013

MCD kilouplus

Formation bases de données - Décembre 2012 - Thiès

Conception bases de données

Tableur Vs BD
Modèle conceptuel
Modèle logique
Modèle Physique
Requêtes et SQL
Importation / Exportation de données

Décembre 2012 - Sandrine AUZOUX, Thierry CHAPUSET

14
08/10/2013

Du
Modèle Conceptuel des Données
au
Modèle Physique des Données
en passant par le
Modèle Logique des Données

Formation bases de données - Décembre 2012 - Thiès

Traduction d’un MCD en MLD


Modèle Logique de Données (1/4)
Règle 1 : toute entité devient une table dans laquelle les attributs
deviennent des colonnes (champs). L’identifiant de l’entité devient la
clé primaire de la table.

Traduction

Formation bases de données - Décembre 2012 - Thiès

15
08/10/2013

Traduction d’un MCD en MLD


Modèle Logique de Données (1/4)
Règle 2 : pour une association binaire de type 1 à n, le n disparait au
profit d’une clé étrangère qui fait référence à la clé primaire de l’autre
table.

Traduction

Formation bases de données - Décembre 2012 - Thiès

Traduction d’un MCD en MLD


Modèle Logique de Données (2/4)
Règle 3 : pour une association binaire de type n à n, le n devient une
table supplémentaire dont la clé primaire est composée des deux clés
étrangères.
Traduction

Formation bases de données - Décembre 2012 - Thiès

16
08/10/2013

Traduction d’un MCD en MLD


Modèle Logique de Données (3/4)
Règle 4 : pour une association binaire de type 1 à 1 est traduite
comme une association de type 1 à n sauf que les valeurs de la clé
étrangère doit être distinctes et parfois non nulles.

Formation bases de données - Décembre 2012 - Thiès

Traduction d’un MCD en MLD


Modèle Logique de Données (/4)
Règle 5 : une association non binaire est traduite par une table
supplémentaire dont la clé primaire est composée d’autant de clés
étrangères que d’entités en association.

Formation bases de données - Décembre 2012 - Thiès

17
08/10/2013

Modèle Physique de Données (MPD)


Le MPD est la représentation exacte de la base de données.
Il est lié au logiciel/SGBD utilisé.
Il est constitué de tables relationnelles, dont les attributs sont typés.
Les types de données peuvent varier selon le SGBD utilisé.
Il respecte les règles d’intégrité, d’unicité et de non vacuité.
Il spécifie les tables de référence.
Il optimise les performances à l’aide des index.
Il permet de créer automatiquement la base de données par des outils
spécifiques en générant le code SQL correspondant.

Formation bases de données - Décembre 2012 - Thiès

Modèle Physique de données


Types de données (1/2)
Texte : chaine de caractères alphanumériques (255 max)
Mémo : chaine de caractères alphanumériques (65535 max)
Date et heure
Monétaire : numérique particulier
Numéro auto : entier long généré par Access
Oui/Non : combinaison logique
Objet Ole : image, son, vidéo
Lien Hypertexte : adresse internet, mail

Formation bases de données - Décembre 2012 - Thiès

18
08/10/2013

Modèle Physique de données


Types de données (2/2)
Numérique
- Octet : 0 à 255 (1 octet)

- Entier : -32 768 à 32 767 (2 octets)

- Entier long : - 2 147 438 648 à + 2 147 438 648 (4 octets)

- Réel simple précision : -3,402823 E38 à +3,402823 E38 (4


octets)
- Réel double précision : -1,79769313486232 E308 à + (8 octets)

- Monétaire : -922 337 203 685 477,5808 à + (8octets)

Formation bases de données - Décembre 2012 - Thiès

Exercice : Kilouplus suite


1. Passage du MCD vers le MLD

2. Création du MPD sous ACCESS


1. Créer les tables
1. Définir les champs (type et taille)
2. Définir les restrictions
3. Identifier les clés primaires
2. Construire le schéma relationnel
1. Identifier les contraintes d’intégrité référentielles
2. Construire les relations entre les tables

Formation bases de données - Décembre 2012 - Thiès

19
08/10/2013

Modèle logique

Formation bases de données - Décembre 2012 - Thiès

Création d’une nouvelle base de


données sous Microsoft ACCESS
Sur le disque dur, la base de données « Access» est
constituée d’un seul fichier dont le nom se termine par
l’extension « .accdb » (pour Access Database).

Formation bases de données - Décembre 2012 - Thiès

20
08/10/2013

Choix de la version – Format 2000

Formation bases de données - Décembre 2012 - Thiès

Base de données vide

Le ruban Office comporte une série d'onglets contenant


des commandes. Les commandes dépendent de l'objet
actif.

Le volet de navigation affiche les objets contenus dans


la base de données par catégorie.

Formation bases de données - Décembre 2012 - Thiès

21
08/10/2013

Description des objets d’une base de données

Tables : objet fondamental d’une base


de données contenant les données.
Requêtes : utilisées pour interroger les
données d’une ou plusieurs tables.
Formulaires : utilisés pour la saisie et la
modification des données d’une table.
Etats : pour afficher les données d’une
table selon une présentation spécifique
Macros : automatisation de
manipulations
Modules : procédures et fonctions
développées à l’aide du langage de
programmation Visual Basic Edition.

Formation bases de données - Décembre 2012 - Thiès

Base de données vide

Le ruban Office comporte une série d'onglets contenant


des commandes. Les commandes dépendent de l'objet
actif.

Le volet de navigation affiche les objets contenus dans


la base de données par catégorie.

Formation bases de données - Décembre 2012 - Thiès

22
08/10/2013

Création d’une table


Le mode Création permet
de créer ou de modifier la
structure d'une table.

Formation bases de données - Décembre 2012 - Thiès

Création d’une table

Nom du champ
• ! Ne pas utiliser de caractères
spéciaux (espace, /,\,&,#...)
• ! Ne pas utiliser de noms réservés
(date, field, table …)
Type de données
Propriétés (masque de saisie, Valide si,
null interdit)
Description du champs
Liste de choix
Formation bases de données - Décembre 2012 - Thiès

23
08/10/2013

Affichage d’une table

Le mode feuille de données permet de saisir et


d'afficher les données contenues dans une table.

Formation bases de données - Décembre 2012 - Thiès

Quelques icônes, sur le pavé gris à gauche de chaque ligne servent de repère :

Saisie des données


La saisie des données se fait simplement, comme dans un tableau Excel.

Quelques icônes, situés à gauche de chaque ligne, servent de repère :


Enregistrement en cours de saisie ou de modification.
Cette ligne (toujours située en fin de tableau) représente la
prochaine ligne de saisie (pour un nouveau client par exemple).

ACCESS sauvegarde automatiquement les enregistrements :


• En changeant d'enregistrement (en passant d'une ligne à l'autre)
• En passant en mode création
• En fermant la table
• En quittant ACCESS

Formation bases de données - Décembre 2012 - Thiès

24
08/10/2013

Création du schéma relationnel (MPD)

Formation bases de données - Décembre 2012 - Thiès

L’intégrité référentielle
Il s’agit de règles simples suivies par le SBDR pour maintenir la
cohérence des relations entre les tables. Pour que la relation soit
toujours valide, il faut que toutes les valeurs de la clé externe de la table
liée existe dans le champs clé primaire de la table d’origine.

Sous Access, des options étendent ce principe :


« mettre à jour en cascade » : lorsque l’utilisateur change la valeur de
la clé primaire, automatiquement, la valeur du champ correspondant
de la table liée est corrigée.
« suppression en cascade » : lorsque l’utilisateur efface un
enregistrement, automatiquement, tous les enregistrements des
tables liées qui ont un champs de même valeur sont supprimés.

Formation bases de données – Octobre 2012

25
08/10/2013

Exercice d’approfondissement MCD


Gestion d’un club de Golf (1/2)
Joueur :
matricule Cirad
Nom
Prénom
Age
Terrain de Golf :
Nom
Adresse (rue, ville, code postal)
Contact (nom, prénom, tel pour la réservation)
18 trous (numéro, distance, par)
Tournoi Cirad : 10 compétitions sont organisées le dernier vendredi du mois
(ARTT) sauf en Juillet et en Aout. Les parties parcours sont joués en individuel.
A chaque partie, chaque joueur reçoit une feuille de score (nb de coups par trou)

Formation bases de données - Décembre 2012 - Thiès

Exercice d’approfondissement MCD


Gestion d’un club de Golf (2/2)

Objectifs :
Créer une base de données qui permette de saisir la feuille de score des
joueurs lors des tournois.
Calculer le nouvel index du joueur à la fin de la saison.
Golf de Coulondres
Exemple de fiche joueur: Saint Gely du Fesc

Joueur : Jean Dupont


Index : 30

Trou Distance Par Coups Reçus Ecart


1 224 4
2 199 4
3 150 3
4 203 4
5 120 3
6 243 4
7 238 4
8 306 4
9 413 5
10 224 4
11 199 4
12 150 3
13 203 4
14 120 3
15 134 4
16 138 4
17 306 4
18 413 5
Formation bases de données - Décembre 2012 - Thiès Total

26
08/10/2013

Exercice d’approfondissement MCD


Généalogie

Pour chaque individu, on dispose des informations suivantes :


Nom de famille
2 prénoms
Date de naissance

Concevoir une base de données qui permette de retrouver :


Tous les descendants d’un couple
Reconstruire un arbre généalogique sur 3 générations (grands-
parents, enfants, petits enfants, cousins, neveux, nièces

Formation bases de données - Décembre 2012 - Thiès

Conception bases de données

Tableur Vs BD
Modèle conceptuel
Modèle logique
Modèle Physique
Requêtes et SQL
Importation / Exportation de données

Décembre 2012 - Sandrine AUZOUX, Thierry CHAPUSET

27
08/10/2013

Présentation SQL
SQL signifie «Structured Query Language», c’est-à-dire «langage
d’interrogation structuré».
C’est le langage standard des SGBDR.
C’est à la fois :
Un langage de définition de données (LDD) : création, modification,
suppression des bases de données et des tables (ordres CREATE, ALTER et
DROP).
Un langage d’interrogation de la base (LID) : interrogation de la base en vue
d'avoir une liste de résultats (ordre SELECT).
Un langage de manipulation de données (LMD) : sélection, insertion,
modification ou suppression des données dans une table (ordres UPDATE,
INSERT et DELETE).
Un langage de contrôle de l’accès aux données (LCD) : définition des
permissions au niveau des utilisateurs d'une base de données (ordres
GRANT et REVOKE).
Formation bases de données - Décembre 2012 - Thiès

Les requêtes dans ACCESS


Il existe 2 grands types de requêtes :

Les requêtes Sélection qui permettent de


sélectionner des enregistrements,
d’effectuer des calculs ou des analyses
(analyses croisées, regroupements) sur les
valeurs d’une ou plusieurs tables.

Les requêtes Action sont utilisées pour modifier, supprimer,


ajouter des enregistrements ou créer de nouvelles tables.

Formation bases de données - Décembre 2012 - Thiès

28
08/10/2013

Création requête sélection


Pour créer une requête Sélection, il faut aller dans l’onglet créer :

Affichage des résultats de la requête :


mode feuille de données Mode création
exécution de la requête

Bouton requête sélection


Formation bases de données - Décembre 2012 - Thiès

Création requête sélection

Fenêtre sélection
des tables

Fenêtre sélection
des champs critères

Formation bases de données - Décembre 2012 - Thiès

29
08/10/2013

Exercice d’application : base comptoir.accdb


Requête Sélection monotable

Ouvrez la base de données comptoir.accdb.


Créez une requête sélection.
Sélectionnez la table Employés
Affichez uniquement les champs : Titre de courtoisie, Nom,
Prénom et fonction

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Création requête sélection employés

Le tri permet de réorganiser les enregistrements en


ordre croissant ou décroissant du contenu du champs.

Plusieurs niveaux de tris sont possible en partant de la


gauche vers la droite. Le champ de gauche est le champ
de premier niveau de tri.

Formation bases de données - Décembre 2012 - Thiès

30
08/10/2013

Exercice d’application : base comptoir.accdb


Résultats requête sélection employés

Permet de basculer en mode


création de requête

Enregistrement en cours
Nombre total d’enregistrement
retourné pas la requête

Fonction recherche dans les


résultats de la requête
Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Barre de défilement

Enregistrement suivant
Nouvel enregistrement
Premier enregistrement

Enregistrement précédent Dernier enregistrement

Formation bases de données - Décembre 2012 - Thiès

31
08/10/2013

Exercice d’application : base comptoir.accdb


Enregistrement d’une requête

Pour sauvegarder une


requête et lui donner un
nom

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Requêtes multitables

On veut connaître pour chaque commande, la date de


commande, le n° de commande, le nom du client, le nom
du messager, le nom du fournisseur.

On a besoin des tables:


Commandes pour les champs Date de commande et n° de
commande
Clients pour le champ Société
Messager pour le champ Nom du messager
Fournisseur pour le champ Société

Formation bases de données - Décembre 2012 - Thiès

32
08/10/2013

Exercice d’application : base comptoir.accdb


Affichage résultats

Résultats non cohérents :


Sur la commande 10702,
il y a 29 fournisseurs.

29 fournisseurs enregistrés
dans la table fournisseurs.

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Importance des relations

La table fournisseur n’est


Reliée à aucune table.

Il manque les tables


Détails commandes
Et produits

Formation bases de données - Décembre 2012 - Thiès

33
08/10/2013

Exercice d’application : base comptoir.accdb


Résultats cohérents

Exercice d’application : base comptoir.accdb


Modification des relations entre tables

Connaître pour chaque employé le nom et le prénom de


son supérieur hiérarchique.

La requête retournera les champs Nom, Prénom et


Fonction de l’employé et les champs Nom, Prénom et
Fonction de son supérieur hiérarchique.

Formation bases de données - Décembre 2012 - Thiès

34
08/10/2013

Exercice d’application : base comptoir.accdb


Modification des relations entre tables

Fuller Andrew, vice président


de la société n’apparaît pas
en tant qu’employé.

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Modification des relations entre tables

Formation bases de données - Décembre 2012 - Thiès

35
08/10/2013

Critères de requête

Un critère de requête est une condition appliquée à un


champ, qui est définie en fonction des valeurs de ce
champs.

C’est une chaîne qui comprend des références de champs,


des opérateurs, des fonctions spécifiques et des constantes.

Dans ACCESS, on parle d’expressions.

Formation bases de données - Décembre 2012 - Thiès

Liste des opérateurs de base


Symbole Description Exemples
< Est inférieur à
<= Est inférieur ou égal à
> Est supérieur à
>= Est supérieur ou égal à
= Est égal à
<> Est différent de
Entre Sélectionne les enregistrement dont les Entre 10 et 20
valeurs sont comprises dans l’intervalle Entre 07/10/2012 et 10/12/2012
In Sélectionne les enregistrements dont la valeur In (« Nantes », « Paris »)
est dans la liste
Est Sélectionne les enregistrements de valeur null Est Null, Est Pas Null
ou pas null
Pas Sélectionne les enregistrements qui ne Pas In (« Paris)
correspondent pas au critère
Comme Effectue une sélection sur une donnée Comme « B*» (retourne Bertrand, Bernard…)
approximative Comme « 1#3 » (trouve 103, 113, 123…)
Formation bases de données – Octobre 2012

36
08/10/2013

Exercice d’application : base comptoir.accdb


Exemple de critères

Sélection de tous les fournisseurs travaillant au Japon

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Exemple de critères multiples

Sélection de tous les fournisseurs chefs de vente travaillant au Japon

Opérateur OU si les Opérateur ET si les


expressions se trouvent expressions se trouvent
sur des lignes différentes sur la même ligne

37
08/10/2013

Exercice d’application : base comptoir.accdb


Enregistrement d’une requête

Pour sauvegarder une


requête et lui donner un
nom

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Champs calculés dans une requête

Calcul du prix total H.T net pour chaque produit


commandé par les clients.

La requête retournera les champs Société, Numéro de


commande, Date de la commande, Nom produits, et
calculera le prix total H.T

Création de la formule de calcul à partir du générateur


d’expression en cliquant sur le bouton

Formation bases de données - Décembre 2012 - Thiès

38
08/10/2013

Exercice d’application : base comptoir.accdb


Champs calculés dans une requête

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Opérations de regroupement
Opération Description
Regroupement Définir les groupes de données sur lesquelles effectuer les calculs
Somme Calcule le total des valeurs du champ
Moyenne Calcule la moyenne des valeurs du champ
Min Trouve la valeur la plus petite du champ
Max Trouve la valeur la plus grande du champ
Compte Calcule le nombre de valeurs dans un champs, sans compter les valeurs nulles
EcartType Calcule l’écart type des valeurs d’un champ
Var Calcule la variance des valeurs d’un champ
Premier Trouve la première valeur du champ
Dernier Trouve la dernière valeur du champs
Expression Pour créer un champ calculé incluant une fonction de regroupement
Où Pour spécifier les critères d’un champ qui n’est pas utilisé pour définir des
regroupement.

Formation bases de données - Décembre 2012 - Thiès

39
08/10/2013

Exercice d’application : base comptoir.accdb


Champs calculés dans une requête
Sélection du nombre de client par pays

Affichage de la ligne opération par


l’intermédiaire du bouton

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Requête analyse croisée

Les requêtes Analyse Croisée permettent de créer des


vues de synthèse de vos données pour en faciliter l'analyse.
Elles présentent les résultat sous forme d’un tableau à
double entrée. Des calculs relatifs à un champ spécifié sont
effectués aux intersections ligne/colonne.

2 façons de créer une requête de type tableau croisé :


Assistant requête d’ACCESS
Manuellement, à partir d’une requête sélection

On veut connaître les quantités totales de produits vendus par


client pour chaque année

Formation bases de données - Décembre 2012 - Thiès

40
08/10/2013

Exercice d’application : base comptoir.accdb


Création requête analyse croisée avec l’assistant

Dans le cas de l’assistant, tous les champs doivent


appartenir à la même source de données, c’est-à-
dire à une table unique ou une requête
intermédiaire.

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Création requête analyse croisée avec l’assistant
Plusieurs champs peuvent
être sélectionnés en en-tête
de ligne.

Formation bases de données - Décembre 2012 - Thiès

41
08/10/2013

Exercice d’application : base comptoir.accdb


Création requête analyse croisée avec l’assistant
Définition du champ à utiliser pour la synthèse ainsi que l’opération ou la fonction.

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Création requête analyse croisée manuellement
1. On crée une requête Sélection standard.
2. On la transforme en requête Analyse Croisée à partir du menu Requête .
3. Dans la ligne Analyse, on indique le champ en-tête des colonnes, les champs en-tête des lignes et le
champ valeur.
4. L'Opération pour les en-têtes est toujours Regroupement. Pour les valeurs, l’opération dépend de ce
qu'on cherche.

Dans notre cas, on cherche


le nombre de produits acheté,
l'opération est donc "Somme".

On peut créer un champ


calculé pour les champ en-tête
de colonne et de ligne.

Formation bases de données - Décembre 2012 - Thiès

42
08/10/2013

Exercice d’application : base comptoir.accdb


Résultat requête analyse croisée

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Requête Création de table

Une requête Création permet de créer une table à partir des résultats d'une
table existante. Nous voulons créer une table Commandes réglées qui
contiendrait la liste des commandes déjà réglées.
1. Créer une requête Sélection "Liste des commandes réglées"
2. Transformer en requête Création 1
(Menu Créer / Création de table)
3. Access demande le nom de la table à créer

3
Attention, si vous sélectionnez une table existante, la table va
être écrasée par cette opération.
Formation bases de données - Décembre 2012 - Thiès

43
08/10/2013

Exercice d’application : base comptoir.accdb


Requête Ajout

Une requête Ajout copie tout ou une partie des enregistrements d'une table (la
table source) à la fin d'une autre table (la table cible). Nous voulons ajouter
les commandes qui ont été réglées depuis la semaine dernière.
1. Créer une requête Sélection
2. Transformer en requête Ajout 1
(Menu Créer / Ajout)
3. Access demande le nom de la table à
laquelle il faut ajouter le résultat de la requête.

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Requête Ajout

Attention :
Les enregistrements sont copiés de la table source vers la table cible et non pas
déplacés.
Les deux tables doivent avoir des noms de champs identiques et les mêmes
types de données.
Si la table source comporte plus de champs que la table cible, les champs
supplémentaires sont ignorés.
Si la table source comporte moins de champs que la table cible, les champs
dont les noms sont identiques sont copiés, les autres sont laissés vides.
Access ne copie QUE les champs que vous avez déclarés dans la requête.

Formation bases de données - Décembre 2012 - Thiès

44
08/10/2013

Exercice d’application : base comptoir.accdb


Requête Mise à jour

Les requêtes Mise à jour permettent de modifier rapidement tous les enregistrements
d'une table ou un groupe d'entre eux. Supposons que l'on veuille augmenter de 10% le
prix des produits dont le prix actuel est inférieur à 100 euros.
1. On crée une requête Sélection, et dans le menu Créer, on clique sur Mise à Jour
2. Un champ Mise à jour apparaît dans la requête, c'est là qu'on va indiquer la
modification qui va avoir lieu.

Dans la case Mise à Jour, on indique


qu'à la place du prix unitaire, nous voulons
[prix_unitaire]*1.1 (soit une augmentation de 10%),
pour les produits dont le prix est inférieur à 100
(critères).

Formation bases de données - Décembre 2012 - Thiès

Exercice d’application : base comptoir.accdb


Requête Suppression

Les requêtes Suppression permettent de supprimer un groupe d'enregistrements qui


répond à un critère donné. Supposons que l'on veuille supprimer de la table commande
toutes les commandes réglées.

On crée une requête Sélection et dans le menu Créer, on clique sur Suppression.

On vérifie bien le résultat avant d'exécuter


la requête, car il n'est pas possible de revenir en
arrière après avoir effacé des enregistrements.

Formation bases de données - Décembre 2012 - Thiès

45
08/10/2013

Conception bases de données

Tableur Vs BD
Modèle conceptuel
Modèle logique
Modèle Physique
Requêtes et SQL
Importation / Exportation de données

Décembre 2012 - Sandrine AUZOUX, Thierry CHAPUSET

Exportation des données vers Excel


Pour exporter des données Access vers Excel, il faut utiliser Access car
Excel ne propose aucune fonction pour importer des données à partir
d’une base de données Access.
Il est possible d'exporter une table, une requête et également des
enregistrements sélectionnés dans une vue.
Un seul objet de base de données peut être exporté à la fois. Il est
possible de fusionner les données dans plusieurs feuilles de calcul Excel
au terme de chaque opération d’exportation.
L’exportation est aussi l’opération la plus appropriée pour copier souvent
les données Access vers Excel. Il est possible d'enregistrer les détails
d'une opération d’exportation pour les réutiliser ultérieurement et
même de planifier l’exportation pour l’exécuter à des intervalles définis.
Toujours fermer Excel pour ne pas générer des erreurs de conversion de
données au cours de l'exportation.
Formation bases de données - Décembre 2012 - Thiès

46
08/10/2013

Type d'exportation
La décision de choisir l'exportation avec ou sans mise en forme affecte la quantité
de données qui sont exportées et la mise en forme des données.

Exportation Champs et Mise en forme


enregistrements
Sans mise en forme Tous les champs et enregistrements Les paramètres de la propriété
sont exportés Format sont ignorés.

Dans le cas des champs Liste de


choix, seuls les ID sont exportés.
Avec mise en forme Seuls les champs et les L’Assistant respecte les paramètres
enregistrements affichés dans la vue de la propriété Format.
ou l’objet actif sont exportés.
Les enregistrements filtrés, les Dans le cas de champs Liste de
colonnes masquées dans une feuille choix, les valeurs de liste de choix
de données ne sont pas exportés. sont exportées.

Formation bases de données - Décembre 2012 - Thiès

Création du classeur Excel

Classeur de destination Type d'exportation Mise en forme


N'existe pas Avec ou sans mise en forme Le classeur est crée pendant l'opération
d'exportation
Existe déjà Sans mise en forme Le classeur n’est pas remplacé.
Une nouvelle feuille de calcul est ajoutée.
Existe déjà Avec mise en forme Le contenu du classeur est remplacé par
les données exportées.
Toutes les feuilles de calcul existantes sont
supprimées.
Une nouvelle feuille de calcul est créée.
Les données de la feuille de calcul dans
Excel héritent des paramètres de mise en
forme de l’objet source.

Les données exportées sont toujours ajoutées dans une nouvelle feuille de calcul.
Il n'est pas possible d'ajouter les données à une feuille de calcul existante ou à
une plage nommée.
Formation bases de données - Décembre 2012 - Thiès

47
08/10/2013

L'opération d'exportation
Sélectionnez l’objet à exporter sous Access.
Sous l'onglet Données externes, dans le groupe Exporter, cliquez sur Excel.
Dans la boîte de dialogue Exporter- Feuille de calcul Excel, vérifiez et validez le
nom du fichier suggéré pour le classeur Excel.
Dans la zone Format du fichier, sélectionnez le format de fichier souhaité.
Pour Exporter les données avec la mise en forme et la mise en page, cochez
l'option correspondante.
Pour afficher le classeur Excel de destination une fois l’exportation terminée,
activez la case à cocher Ouvrir le fichier de destination une fois l’exportation
terminée.
Si vous avez sélectionné plusieurs enregistrements dans la vue avant de
commencer l’exportation, vous pouvez sélectionner Exporter uniquement les
enregistrements sélectionnés.

Formation bases de données - Décembre 2012 - Thiès

Importer des données vers ACCESS


Plusieurs façons de stocker des données d'un classeur Excel dans une
base de données Access:
Copier les données d'une feuille de calcul ouverte pour les coller dans une
feuille de données Access.
Importer une feuille de calcul dans une table nouvelle ou existante.
Attacher une feuille de calcul à une base de données Access.
Il est impossible d'enregistrer un classeur Excel en tant que base de
données Access. Excel n'intègre aucune fonctionnalité pour créer une
base de données Access à partir de données Excel.
Une seule feuille de calcul peut être importée à la fois. Pour en importer
plusieurs, il faut répéter l'opération pour chacune d'entre elles.
Toujours fermer le classeur Excel pour ne pas générer des erreurs de
conversion de données au cours de l'importation.

Formation bases de données - Décembre 2012 - Thiès

48
08/10/2013

Attacher des données dans Excel


Lorsque vous attachez une feuille de calcul ou une plage nommée Excel,
Access crée une table attachée. Cette table affiche les données de la
feuille de calcul mais ne les stocke pas dans la base de données.
Une base de données peut contenir plusieurs tables attachées.
Toutes les modifications apportées aux données dans Excel sont
automatiquement répercutées dans la table attachée.
Il est impossible de modifier le contenu de la table attachée dans Access.
Pour ajouter, modifier ou supprimer des données, il faut travailler dans le
fichier source dans Excel.
Une seule feuille de calcul ne peut être attachée à la fois. Pour attacher
des données de plusieurs emplacements au sein d'un même classeur, il
faut répéter l'opération d'attache pour chaque feuille de calcul.

Formation bases de données - Décembre 2012 - Thiès

Préparation des données Excel


Passez en revue les données source et effectuez l'action appropriée décrite ci-
dessous avant l'importation ou avant d'attacher des données Excel.
Elément Description
Nb de colonnes Ne peut pas dépasser 255 car Access ne prend pas en charge plus de 255 champs d'une table.

Colonnes et Vous ne pouvez pas filtrer ou ignorer des lignes ou des colonnes lors de l'importation.
lignes ignorées
Colonnes, Supprimez toutes les colonnes et lignes vides inutiles dans la feuille de calcul. Pour ajouter des
lignes et cellules cellules vides, s'assurez que le champ correspondant dans la table accepte les valeurs Null.
vides
Valeurs d'erreur Si une feuille de calcul contient des valeurs d'erreur, Access place une valeur Null dans les
champs correspondants de la table. Vous devez corrigez les erreurs avant l'importation.
Type de données Il est important de mettre en forme chaque colonne dans Excel et de leur affecter un format
de données avant de lancer l'importation
Elément graphique Les éléments graphiques, tels que des logos, graphiques et images, ne peuvent pas être
importés. Il faut les ajouter manuellement à la base de données après l'importation.
Première ligne Quand la première ligne de la feuille de calcul contient le nom des colonnes, il faut indiquer à
Access de considérer les données de la première ligne comme nom de champ pendant
l'importation
Formation bases de données – Octobre 2012

49
08/10/2013

Préparation de la base de données de


destination
S'assurer que la base de données n'est pas en lecture seule et que vous
êtes autorisé à y effectuer des modifications.
Avant de lancer l'importation, il est nécessaire de décider de choisir
entre :
Stocker les données dans une table: Access crée une table et y ajoute les
données importées. Si une table porte déjà le nom spécifié, Access remplace le
contenu de la table existante par les données importées.
Ajouter les données à une table existante : les lignes constituant le
fichier Excel s'ajoutent à la table spécifiée.
Il est important que les données source correspondent à la structure de
la table de destination et au paramétrage des champs de cette dernière.

Formation bases de données - Décembre 2012 - Thiès

L'opération d'importation et d'attachement


L'opération d'importation peut se faire soit par l'assistant qui guide tout au long du
processus, soit manuellement.
Sous l'onglet Données externes, dans le groupe Importer, cliquez sur Excel.
Dans la boîte de dialogue Données externes - Feuille de calcul Excel, dans la
zone Nom de fichier, spécifiez le nom du fichier Excel qui contient les données à
importer ou à attacher.
Spécifier comment stocker les données:
Pour stocker les données dans une nouvelle table, sélectionnez Importer les données
sources dans une nouvelle table de la base de données active.
Pour ajouter les données à une table existante, sélectionnez Ajouter une copie des
enregistrements à la table.
Pour attacher la source de données en créant une table attachée, sélectionnez, Lier à
la source de données en créant une table attachée. L'Assistant Attache de feuille de
calcul démarre et vous guide tout au long du processus d'attache.

Formation bases de données - Décembre 2012 - Thiès

50

Vous aimerez peut-être aussi

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy