Vous êtes sur la page 1sur 43

BASE DE DONNÉES

Benmimoun Racha
Année universitaire : 2022/2023
Une base de données
◦ Définition : une base de données est un ensemble de données structurées et stockées
dans des fichiers.
Un système de gestion base de données
Un SGBD (système de gestion de base de donnée) : est un système informatique servant
à:
➢Crée une base de données
➢Insérer des données
➢Extraire des données
➢Stocker des données
➢Mise à jour des données
Un SGBD doit remplire les fonctionnalité suivantes :
➢La description
➢L’utilisation
➢L’intégrité
➢La confidentialité
Architecture client-serveur
• Programme serveur. Un SGBD est instancié sur une machine sous la forme
d’un programme serveur qui gère une ou plusieurs bases de données, chacune
constituée de fichiers stockés sur disque. Le programme serveur est seul
responsable de tous les accès à une base, et de l’utilisation des ressources
(mémoire, disques) qui servent de support à ces accès.

• Clients (programmes). Les programmes (ou applications) clients se connectent


au programme serveur via le réseau, lui transmettent des requêtes et reçoivent des
données en retour. Ils ne disposent d’aucune information directe sur la base.
Illustration des niveaux
Les modèles de base de données
◦ Les bases de données hiérarchiques : permettaient de structurer l’information de façon
hiérarchique
◦ Les bases de données réseau
◦ Les bases de données relationnelles
◦ Les bases de données objet
CONSTRUCTION
D’UNE BD
Construction d’une base de données
◦ La normalisation : regroupe l’ensemble des données dans une table puis les rediviser en
sous table pour éviter la redondance et l’incohérence.
◦ Modélisation des bases de données : Elaborer un modèle entité/ association (E/A) ou
modèle conceptuel des données (MCD )
Les composants d’un modèle MCD
◦ Entité : Modéliser l’ensemble des objets de la même nature ou abstraits.
Exemple : Personne , client, logement, …

◦ Propriété : Modélisation d’une information présente dans le discours


Exemple : Nom, prénom , Adresse, ….

◦ Occurrence: C’est un objet

◦ Relation : L’association entre deux ou plusieurs entités .

◦ Cardinalité : Elle traduit le nombre de participation des occurrences dans une relation
Min (0.1) , max (1,n)
Dimension d’une entité
◦ Le nombre d’entité qui participe à une relation s’appelle dimension.

◦ Relation avec deux entité s’appelle : relation binaire


◦ Relation avec trois entité s’appelle : relation ternaire
◦ Relation avec une seul entité s’appelle : relation réflexive
Dépendance fonctionnelle
◦ Une propriété dépend fonctionnellement d’une autre propriété si pour une valeur A
correspond à une et une seul valeur de B

◦ A → B : A détermine B
B dépend fonctionnellement de A

Exemple : N° d’immatriculation et la marque de véhicule


15000 → Mercedes
20000 → Audi N° → la marque de véhicule
45000 → BMW
Exemple :
◦ Code de client
◦ Nom du client
◦ Adresse du client
◦ Ville du client
◦ N° de commande
◦ Date de commande
◦ Lieu de commande

Q: Réaliser un modèle E/A ?


Exemple :
◦ N° du professeur
◦ Nom du professeur
◦ N° du module
◦ Titre du module
◦ N° de salle

◦ Q: réalisez un modèle E/A ?


Exercices 1:
Dans une entreprise, un département est identifié par un nom et caractérisé par une
localisation.
Un employé est caractérisé par un numéro, son nom, son grade et le département dans lequel
il travaille.
Le numéro d’un employé est unique dans un département mais pas dans l’entreprise. Donner le
MCD, en précisant les attributs.
Exercice 2:
◦ Détermine les cardinalités du MCD suivant :
Exercice 3 :
◦ Créer un MCD d’une base de données de voiture qui enregistre les certificats
d’immatriculation des véhicules en circulation .
◦ Un véhicule est d’un modèle donnée identifié par un numéro de type
◦ Un véhicule peut avoir un propriétaire ou plus( copropriétaire )
◦ Les recherches effectuées sur la base doivent permettre de retrouver, par exemple,
tous les véhicules d’une personne, la ou les personnes propriétaires d’un véhicule dont
on connaît l’immatriculation et tous les propriétaires d’un modèle de voiture donné
Exercice 5:
◦ Code d’étudiant
◦ Nom d’étudiant
◦ Prénom d’étudiant
◦ Année
◦ Mention
◦ Titre diplôme
◦ Niveau

◦ Q: Réalisez un MCD?
Exercice 4:
◦ Créer un MCD d’une base permettant à un groupe de gérer les droits d’auteur des
livres publiés par ses différentes maisons d’édition. Elle doit répondre aux contraintes
suivantes :
◦ Un livre peut être écrit par un ou plusieurs auteurs. Un auteur peut écrire un ou plusieurs
livres. Chaque auteur touche un pourcentage des droits totaux d’un livre
en fonction de sa participation.
◦ Un livre est publié par un seul éditeur.
Modèle logique des données
◦ Il est aussi appelé modèle relationnel
◦ On emploie souvent l’abréviation suivante : MLD : Modèle logique des données
◦ Le modèle logique des données consiste à décrire la structure de données utilisée sans
faire référence à un langage de programmation.
Différence entre un MCD et MLD
◦ Le MCD (Modèle Conceptuel de Données) ne peut pas être implanté dans une base
de données sans modification.
◦ Il est obligatoire de transformer MCD en MLD. On dit qu’on effectue un passage du
modèle conceptuel de données vers le modèle logique de données.
◦ Le MLD pourra être implanté dans une base de données relationnelle.
◦ Le MCD a pour but de modéliser les données.
Vocabulaire du MLD
◦ Le domaine est l’ensemble des valeurs que peut prendre une donnée.
◦ Une table porte un nom et est composé des attributs prenant leurs valeurs dans les
domaines correspondants.
◦ Une clé est constitué de 1 ou plusieurs attributs.
Les règles de passage
Règle N°1
Pour les entités:
◦ toute entité est transformé en table .
◦ Ses propriétés deviennent des champs de table ou attributs.
◦ L’identifiant devient une clé primaire de la table.
Pour les relations:
Dépend des cardinalités, il existe deux cas:
◦ La relation disparait
◦ La relation se transforme en table
Règle N°2
Toute association binaire *,1-*,n va disparaitre et on duplique l’identifiant de l’entité du
coté (*,n) dans celle du coté (*,1)
exemple :
Règle N°3

Toute association binaire de type (*,n-*,n) devient une table ayant comme clé le couple
composé par les deux clés des deux tables issues des entités.
Exemple :
Règle N°4
Dans une association à trois participants ou plus, l’association devient une table ayant
comme clé le composé des clés de toutes les tables issues des entités participante à
cette association.
Exemple:
Règle N°5
◦ Relation binaire aux cardinalités (0,1)-(1,1):
La clé primaire de la table à la cardinalité (0,1) devient une clé étrangère dans la table
à la cardinalité (1,1)

Exemple :
Chaque enseignant encadre 0 ou 1 groupe, chaque groupe est encadré par un et un
seul enseignant.
Le modèle relationnelle de données
◦ Représenter une association binaire 1,1 - 1,n
Représenter une association binaire (0 ou 1) , n - (0 ou 1), n non porteuse de propriétés
Exemple 1 :
◦ Passez du MCD en MLD puis en schéma relationnelle
Exemple 2 :
On vous propose le modèle conceptuel de donnée MCD d'une mini application de gestion
d'un Club de vacances. On vous demande de transformer le MCD ci-dessous en modèle logique
de données MLD en respectant bien sûr toutes les règles du passage MCD au MLD.
Exercice 1:
◦ Pour les besoins de la gestion d’un aéroport, on souhaite mémoriser dans une base de données les
informations nécessaires pour la description des faits suivants :Chaque avion géré est identifié par
un numéro d’immatriculation. Il est la propriété soit d’une société, soit d’un particulier : dans les
deux cas, on doit connaître le nom, l’adresse et le numéro de téléphone du propriétaire, ainsi que
la date d’achat de l’avion ;
◦ Chaque avion est d’un certain type, celui-ci étant caractérisé par son nom, le nom du
constructeur, la puissance du moteur, le nombre de places ;
◦ La maintenance des avions est assurée par les mécaniciens de l’aéroport. Par sécurité, les
interventions sont toujours effectuées par deux mécaniciens (l’un répare, l’autre vérifie). Un même
mécanicien peut, selon les interventions, effectuer la réparation ou la vérification. Pour toute
intervention effectuée, on conserve l’objet de l’intervention, la date et la durée.
◦ Pour chaque mécanicien, on connaît son nom, son adresse, son numéro de téléphone et les types
d’avion sur lesquels il est habilité à intervenir.
◦ Un certain nombre de pilotes sont enregistrés auprès de l’aéroport. Pour chaque pilote, on connaît
son nom, son adresse, son numéro de téléphone, son numéro de brevet de pilote et les types
d’avion qu’il est habilité à piloter avec le nombre total d’heures de vol qu’il a effectué sur chacun
de ces types
Exercice 2:
• Un enseignant est caractérisé par son nom, prénom et son bureau. Il peut enseigner une ou plusieurs matières.
• Une matière peut être enseignée par un ou plusieurs enseignants. Une matière est distinguée par son intitulé.
• Un étudiant est caractérisé par son nom, prénom.
• Un étudiant doit s’inscrire à une ou plusieurs matières.
• Un étudiant passe un ou plusieurs contrôles continus dans chaque matière. Chaque contrôle est caractérisé par une
note et un coefficient.
• Il passe aussi un ou plusieurs examens dans chaque matière où il est inscrit. Un examen est caractérisé par une note
et un coefficient.
MySQL
MySQL
◦ MySQL est un Système de Gestion de Bases de Données (SGBD) fonctionnant sous
Linux et Windows. MySQL est sous Licence GPL (aussi bien sous Linux que
Windows).
MySQL
cet outil permet de :
◦ créer de nouvelles bases
◦ créer/modifier/supprimer des tables
◦ afficher/ajouter/modifier/supprimer des tuples dans des tables
◦ effectuer des sauvegardes de la structure et/ou des donnes
◦ effectuer des requêtes
◦ gérer les privilèges des utilisateurs
Domaines sur MySQL
Type Description
Smallint Type d’entiers relatifs
Integer Idem
bigint idem
float Flottants simple précision
Double Flottants double précision
Char Chaines de longueur fixes
varchar Chaines de longueur variable
Date Date
time Horaire(heure, minutes, second)
datetime Date et heure
Pk Clé primaire
NN Not null
AI Auto incrémentation
UQ Unique indexe
G Colonne calculé
Binary Stock des données binaires brutes
UN Unsigned data type
default Donnée inconnue
Les requêtes
◦ Les requêtes est une interrogation de base donnée elle comporte un certain nombre
de critères pour préciser la demande.
◦ Il existe deux types de requettes : requettes d’action, requettes de selection
◦ Exemple :
✓Select
✓Join
✓Insert
✓….
Crée une base sur MySQL
◦ Pour l’affichage :

L’affichage Select…from….;
Modifier quelque chose Select … as … from …;
Ordre ascendant Order by asc
Ordre décroissant Order by desc
entre Between ‘…’ and ‘…’
Dont where
Se termine Like’%x’
éliminer doublon distinct
ajouter add
Modifier modify
Supprimer drop

Vous aimerez peut-être aussi