Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Pratique de Bases de Données
I.N.S.E.A Pratique de Bases de Données Téléchargement cours + exemples : Adresse M. Khalid EL HACHEMI
2
Plan du cours CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I- Généralités 1- Historique 2- Pourquoi une BD ? 3- Qu’est-ce q’une base de données (BD et SGBD) II- Fonctions d’un SGBD III- Les différents niveaux de représentation d’une BD 1- Niveau externe 2- Niveau conceptuel 3- Niveau interne
3
Plan du cours I- SQL CHAPITRE II: La conception logique d’une BD
I- Le modèle conceptuel ‘’Liens-Entités’’ II- Le modèle hiérarchique III- Le modèle relationnel IV- La méthode Merise 1- Modèle conceptuel de données (MCD) 2- Modèle logique de données (MLD) 3- Modèle physique de données (MPD) CHAPITRE II: Les langages de manipulation de donnée I- SQL Exercices d’application sur MS Access
4
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités 1- Historique: * Données stockées sur bande magnétique sous forme d’enregistrement séquentiels pour constituer des Fichiers * Apparition des disques magnétiques: Accès plus rapide aux données et stockage d’une masse plus importante d’information notion d’organisation de fichier et du système de gestion des fichiers * Avec le temps, les fichiers classiques pose un nombre de défaut et de contraintes. * De plus, dirigeants des entreprises deviennent de plus en plus exigeant: besoin d’exploiter d’une façon fine le système d’information par le biais de requête naissance du concept des bases de données
5
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Bande magnétique disques magnétiques: 8’’: 5.25": 1976 3.5" : créé par Sony en 1981
6
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités 1- Historique (suite): * Milieu des années 60: naissance de la 1ère génération des SGBD basés sur des conception d’hiérarchie et de réseau * Début des années 70 : 2ème génération basées sur le modèle relationnel * Début des années 80 : naissance des SGBD répartis puis multimédia (images, voix …) * Actuellement on parle de base de données orientées objets.
7
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités 2- Pourquoi une BD ? Exemple: Considérons une compagnie d’assurance vendant trois sortes d’assurances: Assurance vie, automobile et local) -La compagnie est organisée en trois département, chacun a ses propres fichiers (traitement traditionnel). L’information est utilisée pour réaliser certain travaux. Travail 1: gérer les assurances, Pour cela on a besoin : -d’un fichier F1 des assurés : Numéro, nom, prénom, date de naissance, sexe, adresse.. -des programmes d’applications: P1 calcul de prime P2 attestations P3 mise à jour
8
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
I. Généralités 2- Pourquoi une BD ? Exemple (suite): Travail 2: gérer les sinistres, Pour cela on a besoin : -d’un fichier F2 des sinistres : Numéro, date du sinistre, lieu, détail du sinistre.. -des programmes d’applications: P4 Ajout d’un sinistre P5 mise à jour Travail 3: règlement des sinistres, Pour cela on a besoin : -des fichiers F1 et F2. -d’un programme d’applications: P6 calcul et production du règlement Chaque département a son propre système d’information semblable à celui-ci
9
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Récapitulons: F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5 Département vie : Chaque département a son propre système d’information semblable à celui-ci
10
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problèmes avec l’utilisation des fichiers Problème 1: un adhérent X a souscrit l’assurance vie et auto. Son identifiant (nom, prénom, age, adresse…) va figurer dans deux fichiers Défaut 1: Redondance d’information espace perdu F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5
11
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problème 2: L’adhérent X déménage et envoie l’avis de changement d’adresse qui aboutit au département auto lequel met son fichier à jour mais ne transmet pas l’information au département vie Défaut 2: Redondance d’information inconsistance d’information ou coût élevé de modification F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5
12
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problèmes avec l’utilisation des fichiers Problème 3: un changement dans le calcul des primes exige une nouvelle donnée dans F1 (la profession par exemple). Les programmes P2 et P3 bien que non concernés par cette nouvelle information sont à corriger, de plus le fichier F1 est à refaire Défaut 3: les programmes sont dépendant des données F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5
13
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problème 4: on veut savoir combien de femmes de 25 à 40 ans ont souscrit une assurance vie. Il faut alors écrire tout un programme pour le savoir Défaut 4: les données sont accessibles seulement à travers les programmes d’application F1 P1 P2 P3 Prime Attestation M-à-j F2 P6 P4 P5
14
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Problèmes avec l’utilisation des fichiers Problème 5: on veut savoir combien de personnes de sexe masculin ont souscrit une assurance vie, une assurance local, mais pas d’assurance auto. Pour cela il faut interroger les 3 fichiers F1, ce qui peut être complexe en raison de codage différent ou de contraintes périphériques. Défaut 5: les données dispersées créent de grandes difficultés pour le traitement d’ensemble. A la limite, le délai de réponse peut être très grand, ou encore les données inaccessibles.
15
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
Récapitulatif objectifs des BD Défauts avec les fichiers Objectifs des BD Redondance d’information Unicité de l’information Dépendance des données à l’égard des programmes Indépendance des programmes d’applications Données accessibles à travers les programmes d’applications Accès par : programmes et langages des requêtes Données dispersées et incohérentes Intégrité des données Chacun a ses propres fichiers Partage des données par plusieurs utilisateurs
16
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
3- Qu’est ce qu’une base de données ? Deux concepts sont à définir: une BD et un System de Gestion de BD (SGBD) Une BD est une collection de données, de différents types, interconnectées et sur lesquelles on peut développer plusieurs applications. Une BD est un ensemble de données structurées et inter reliées qui sont fiables, correctes, cohérentes et partageables par plusieurs utilisateurs ayant des besoins d’informations différents et cela sous le contrôle d’une autorité unique qui est l’administrateur de la BD (DBA) Un SGBD est un logiciel qui permet à un utilisateur d’interagir avec une BD (stocker, accéder, mettre à jour des données (Access, Oracle, SqlServer…)
17
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD Un SGBD permet principalement d’organiser les données sur les supports, et fournit les procédures de manipulation de ces mêmes données (recherche, sélection, mise à jour..) Mais il a d’autres fonctions: 1. Description: le SGBD doit mettre à la disposition de l’utilisateur un outils pour décrire l’ensemble de données qui sont stockées dans la BD. Il y a différents niveaux de description de ces données: -description logique: perception de la BD par l’utilisateur -description physique: organisation des données sur les supports physiques La description se fait par un langage de définition de données (LDD) propre à chaque SGBD
18
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD 2. Utilisation: offrir à l’utilisateur une interaction avec la BD (rechercher, sélectionner et modifier) . Il existe 2 façon pour interroger la BD: - par programmes d’application (informaticiens) - avec langage de requêtes (non informaticien) Cette utilisation se fait par un langage de manipulation de données (LMD) 3. Intégrité: offrir à l’utilisateur la possibilité de définir des règles qui permettent de maintenir l’intégrité de la BD (règles ou contraintes d’intégrité: propriétés qui devront être toujours vérifiées). Exemple: 0<Note<20 ou note = -1 (absent)
19
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD 4. Confidentialité : puisqu’une BD est partagée par plusieurs utilisateurs, certains sous ensembles ne doivent être accessibles que par des personnes autorisées. Le SGBD doit offrir des mécanismes permettant de vérifier les droits d’accès des utilisateurs (mots de passe, rôle..) Exemple: ……. 5. Synchronisation d’accès ou concurrence d’accès : lorsque les programmes d’application accèdent aux même informations au même temps, le SGBD doit offrir les mécanismes pour détecter les cas où il y aurait conflit d’accès et de les traiter correctement (problème de lecture fantôme…)
20
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
II. Fonctions d’un SGBD 6. Sécurité de fonctionnement : en cas d’incident provenant du matériel ou du logiciel, la BD n’est plus opérationnelle. Afin d’assurer le redémarrage du système après la pane, le SGBD doit rétablir la base dans un état cohérent (sur la base des fichiers journal et des sauvegardes à intervalles réguliers)
21
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD 1- Niveau externe 2- Niveau conceptuel 3- Niveau interne
22
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD Monde réel Groupes d’utilisateurs Procéssus de modélisation Schéma externe 1 Schéma physique Schéma conceptuel Schéma externe 1 Schéma externe 1 BD physique Niveau Externe Niveau Conceptuel Niveau interne
23
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD 1- Le niveau externe est l’ensemble des schémas externes des différents groupes d’utilisateurs. Le schéma externe est la vision d’une partie du schéma conceptuel par un groupe d’utilisateurs Exemple: Le service vente n’a pas besoin d’avoir une vision globale sur toute la base, il peut se limiter à la partie qui englobe les commandes, fournisseurs et produits
24
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD 2- Le niveau conceptuel: Le schéma conceptuel est la partie fondamentale dans l’architecture d’un système de BD. Il correspond à la sémantique (liens logiques) des données de l’entreprise Il représente les objets du monde réel (classe d’objets) et les associations entre eux Exemple: Etudiants Cycles X Y . Z I.A I.E . T Inscription (lien logique)
25
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD Le processus de modélisation se fait à l’aide d’un modèle de données. Un modèle de données est un outil formel (ensemble de concepts et de règle) utilisés pour représenter l’organisation logique des donnes On distingue essentiellement entre trois modèles principaux: - Le modèle hiérarchique - Le modèle réseau - Le modèle relationnel
26
CHAPITRE I: CONCEPTS FONDAMENTAUX D’UNE BD
III- Les différents niveaux de représentation d’une BD 3- Le niveau interne: Le schéma physique a pour but de spécifier comment les donnée seront stockées sur les support (noms de fichiers, organisation, localisation, enregistrements, chemin d’accès…)
27
Monde réel Groupes d’utilisateurs Procéssus de modélisation
Schéma externe 1 Schéma physique Schéma conceptuel Schéma externe 1 Schéma externe 1 BD physique Niveau Externe Niveau Conceptuel Niveau interne
28
CHAPITRE II: LA CONCEPTION LOGIQUE D’UNE BD
La conception logique d’une BD consiste à définir : 1- les types de données élémentaires (attributs) : nom client, adresse… 2- les types de données composées qui permettent de regrouper les attributs afin de décrire les entités du monde réel: Client, étudiant, voiture, … 3- les types de données composées qui permettent de regrouper les attributs afin de décrire les association du monde réel : inscription, propriétaire, locataire,… 4- Éventuellement, des règles que devrons suivre les données au cours de leurs existence dans le système Représentation Modèle standard : Liens-Entités
29
1- Le Modèle Conceptuel « LIENS-ENTITES »
Définitions : Attribut: c’est la plus petite abstraction au niveau de l’entreprise qui a une signification pour l’utilisateur (Nom Client, CIN, Prix, …) attribut = propriété Lien : c’est une association entre des objets. Un lien n’est pas une règle générale mais il traduit une contrainte de l’entreprise
30
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens : 1- Lien hiérarhique de type (1 : N): Soit A et B deux ensemble d’objets. On a un lien hiérarchique de type (1 : N) de A vers B, noté : A (1 : N) B , si une occurrence de A permet de déterminer 0, 1 ou plusieurs occurrences de B et si à une occurrence de B correspond au plus une occurrence de A Exemple: A: Service B: Employé S1 S2 . Sn E1 E2 . Ep
31
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens : 2- Lien maillé de type (N : M): Soit A et B deux ensemble d’objets. On a un lien maillé de type (N : M) de A vers B, noté : A (N : M) B , si l’on n’a aucune restriction sur le nombre d’occurrences de A et de B (c.à.d à une occurrence de A correspond 0, 1 ou plusieurs occurrences de B et inversement) Exemple: A: Fournisseur B: Produit F1 F2 . Fn P1 P2 . Pi
32
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens : 3- Lien fonctionnel de type (N : 1): Soit A et B deux sous ensemble d’objets. On a un lien fonctionnel de type (N : 1) de A vers B, noté : A (N : 1) B , si toute occurrence de A détermine au plus une occurrence de B et si à une occurrence de B peut correspondre 0, 1 ou plusieurs occurrences de A (B est dite déterminée par A) Exemple: Etudiant (N°Etudiant, Nom, Clase) A = {N°Etudiant} B = {Nom, Clase} A (N : 1) B Quand on connaît N°Etudiant on peut connaître son nom et sa classe, alors que l’inverse n’est pas vrai.
33
1- Le Modèle Conceptuel « LIENS-ENTITES »
Les 4 types de liens : 4- Lien particulier de type (1 : 1): Un lien particulier de type (1 : 1) noté : A (1 : 1) B , correspond à ce qu’une occurrence de A détermine au plus une occurrence de B et inversement. Exemple: Pays Capitale Remarques: Les liens hiérarchiques (1:N) et les liens maillés (N:M) sont des liens inter-entités Les liens foncionnels sont des liens intra-entités
34
1- Le Modèle Conceptuel « LIENS-ENTITES »
Notion d’entité : Entité = Ensemble d’Attributs + Liens fonctionnels Entité : Ensemble d’attributs liés fonctionnellement, qui représentent une abstraction d’une partie de l’entreprise, qui a un nom et dont on peut identifier chaque occurrence Exemple: Entité client, entité étudiant, entité produit On distingue 2 types d’entités a- les entités statiques (autonomes) Entités dont l’existence ne dépend pas des attributs d’une autre entité Exemple: Fournisseur, Client, ..
35
1- Le Modèle Conceptuel « LIENS-ENTITES »
b- les entités dynamiques Entités dont l’existence est liée à des attributs d’une ou plusieurs entités statiques Elles n’ont un sens que comme résultat de l’association entre certaines entités statiques. Une entité dynamique peut être porteuse ou non porteuse d’information Exemple 1 : Client( N°Client, Nom, Adresse) Article( N°Article, Désignation, Prix) Article-Cde( N°Article, N°Client , QtéCommandée, DateCde) Exemple 2 : Personne( N°CIN, Nom, Adresse) Voiture( N°Voiture, Marque, Couleur, …) Propriété( N°CIN, N°Voiture)
36
1- Le Modèle Conceptuel « LIENS-ENTITES »
Remarques: - Toute entité doit avoir un nom qui la distingue des autres - Chaque élément d’une entité est appelé une occurrence - Chaque occurrence d’une entité est distincte des autres - Chaque entité possède au moins un identifiant constitué d’un ou plusieurs attributs qu’on appelle clé. Exemple d’illustration: entité clé attribut Abonné( N°Abonné, Nom, Adresse) valeur de l’attribut N°Abonné ( 123, Slimani, Rabat ) occurrence
37
2- Le Modèle Hiérarchique
1- Définitions : Un modèle de données hiérarchique : est un ensemble de définitions d’arborescence Une définition d’arborescence : est un diagramme de données dans lequel chaque entité, sauf la racine, a un seul arc incident de type (1:N) et 0, 1 ou plusieurs arcs émergeant de type (1:N). Exemple d’une définition d’arborescence : Département Division Employé Projet
38
2- Le Modèle Hiérarchique
Exemple d’un modèle qui n’est pas hiérarchique : Professeur Cycle Cours Étudiant Salle
39
2- Le Modèle Hiérarchique
le modèle hiérarchique correspondant est constitué de 2 définitions d’arborescence : Professeur Cycle Cours Cours Étudiant Salle 1éme définition d’arborescence Étudiant 1ère définition d’arborescence
40
2- Le Modèle Hiérarchique
1- Définitions (suite) : Une base de données hiérarchique : est un ensemble d’occurrence de définitions d’arborescence Exemple : soit le modèle suivant Le modèle correspondant est : N°Service N°Division S1 S2 S3 S4 S5 S6 D1 D2 D3 Division Service
41
2- Le Modèle Hiérarchique
2- Caractéristiques du modèle : a- La relation Parent-Enfant : une occurrence d’entité d’un niveau i est dite parent, si elle est associée avec au moins une occurrence d’entité de niveau i+1 Exemple : soit le modèle hiérarchique suivant Département Niveau 0 Division Niveau 1 Employé Projet Niveau 2 Enfant Niveau 3
42
2- Le Modèle Hiérarchique
2- Caractéristiques du modèle : b- Élimination des occurrences d’entités : une occurrence d’une entité doit être reliée à une occurrence Parent et ainsi de nœud en nœud jusqu’à l’occurrence racine. l’élimination d’une occurrence d’entité donnée provoque l’élimination de tous ses descendants c- Les liens maillés dans le modèle hiérarchique : Le modèle hiérarchique ne peut représenter directement un lien (N : M) entre deux entités. Solution : duplication des occurrences ou création d’une nouvelle entité permettant l’éclatement d’un lien (N : M) en deux lien (1 : N)
43
2- Le Modèle Hiérarchique
Exemple : soit la structure suivante Fournisseur Produit F1 F2 F3 P1 P2 P3 P4 P5 Fournisseur N : M Produit Solution avec duplication des occurrences : Fournisseur Produit Fournisseur Produit Produit Fournisseur
44
2- Le Modèle Hiérarchique
(suite …) Fournisseur Produit Fournisseur F1 F2 F3 P1 P2 P3 P4 P5 N : M Produit Solution par intégration d’une entité de lien : Fournisseur Produit Fournisseur Produit Pointeurs logiques Four/Prod Four/Prod Four/Prod Redondance au niveau logique uniquement
45
2- Le Modèle Hiérarchique
3- Les avantages du modèle : - Le modèle hiérarchique est conceptuellement simple à comprendre et à utiliser - Dans la réalité, plusieurs applications ne nécessitent que des relation de type (1 : N) 4- Les défauts du modèle : - Démonstration à travers l’exemple: Département Nom Dept Chef Dept Nbre employés Service Nom Service Chef service Employé Num Emp Diplôme Date Recrut Salaire
46
2- Le Modèle Hiérarchique
a- Problème de suppression : - Un service devient inutile et on veut le supprimer de la base, sans toutefois supprimer les informations des employés de ce service (qu’on va réaffecter) L’élimination de ce service entraîne l’élimination de tous ses descendants Département Nom Dept Chef Dept Nbre employés Service Nom Service Chef service Employé Num Emp Diplôme Date Recrut Salaire
47
2- Le Modèle Hiérarchique
b- Problème d’insertion : - Supposons qu’on a recruté un nouvel employé et qu’on ne l’a pas encore affecté. Où mettrons nous les informations sur cet employé?? Impossible d’insérer une occurrence fils sans insérer les occurrences des différents parents hiérarchiques Département Nom Dept Chef Dept Nbre employés Service Nom Service Chef service Employé Num Emp Diplôme Date Recrut Salaire
48
2- Le Modèle Hiérarchique
c- Problème de modification : - Supposons qu’une augmentation des salaires touches une catégorie particulière d’employés (licenciés par exemple). Le salaire doit être changé partout où apparaît le diplôme licence. Pour cela, il faut parcourir tous les département et pour chaque département passer par tous les services, puis tous les employés pour décider de l’augmentation La modification entraîne un coût élevé, ou risque d’inconsistance Département Nom Dept Chef Dept Nbre employés Service Nom Service Chef service Employé Num Emp Diplôme Date Recrut Salaire
49
2- Le Modèle Hiérarchique
d- Problème de recherche / consultation : - Il est facile de connaître les employés qui travaillent dans un département donné. Cependant, il est beaucoup plus compliqué de savoir dans quel département se trouve les employés ayant un salaire donné. Coût élevé de recherche Département Nom Dept Chef Dept Nbre employés Service Nom Service Chef service Employé Num Emp Diplôme Date Recrut Salaire
50
2- Le Modèle Hiérarchique
- Autres Problèmes : - La difficulté d’exprimer les relations (N : M). - nécessité d’espace de stockage important . - Impossibilité d’exprimer des parents multiples .
51
2- Le Modèle Relationnel
Inventé par CODD en il repose sur des bases mathématiques et principalement sur le concept de relation … Département Département Projet Employé Division Division Employé Projet
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.