Download introduction to data bases systems and more Summaries Deductive Database Systems in PDF only on Docsity!
Bases de Données
Avancées
Génie informatique 2 Semestre 2 Année universitaire 2019/
Imad BADI BDA
Plan du cours
6 Base de données orientées objets
PL/SQL : introduction, variables, exceptions,
transaction, fonctions, procédures, triggers, packages.
3 Administration d’une base de données Oracle
1 Rappel : BD, SGBD, SQL
5 Base de données Relationnelles objet
4 Les Indexes
- Un système d'information est construit autour de
volumes de données de plus en plus important. Ces
données doivent être stockées sur des supports
physiques. Les données sont stockées et organisées dans
des bases de données - BD (databases - DB).
- Un utilisateur doit pouvoir les retrouver. Il faut pouvoir les
interroger par des requêtes.
- Les données évoluent, il faut donc pouvoir les manipuler :
ajouter, modifier, supprimer des données.
- Le logiciel de base qui permet de manipuler ces données
est appelé un système de gestion de bases de données -
SGBD (database management system - DBMS).
Bases de données
- BD
- mémoriser de grandes quantités de données essentielles à la vie de l'entreprise,
- Capitaliser les données pour répondre à un besoin
spécifique,
- les organiser, faciliter les requêtes et permettre
l‘évolution,
- Offrir une vue claire et d’une multitude de données
liées entre elles.
- donner l'accès a des applications diverses, a des utilisateurs différents avec des modes d'accès variés.
Fonctionnalités principales
- Une BD est organisée selon un modèle de données.
- Les modèles les plus connus:
- Modèle hiérarchique (Années 60)
- Modèle réseau (Années 70)
- Modèle relationnel (Années 80)
- …
Modèles de base de données
Base de données
Fichier n
Fichier 1
Fichier 2
- Les données sont organisées de manière arborescente.
- Accessible uniquement à partir de la racine.
- Chaque enregistrement n'a qu'un seul possesseur (relation père-fils).
Inconvénients
- Manque de standardisation.
- le gaspillage de la mémoire
- Accès fastidieux.
- Ne supporte pas les relations N-N
- Un client peut avoir plusieurs comptes
dans plusieurs agences.
Modèle hiérarchique
- Introduit par Edgar Frank Codd de IBM en 1970.
- Repose sur des principes mathématiques.
- Organisation de données dans des tables bidimensionnelles:
Relations.
Concepts de base:
- Attribut.
- Domaine.
- Relation (table).
- Tuple.
- Attributs: correspondent aux caractéristiques ou propriétés des
faits;
- Exemples: nom_etudiant, prenom_etudiant.
Modèle relationnel
- Domaine: correspond à l’ensemble des valeurs possibles d’un
attribut.
- Exemple: prix_produit ]0,5000], ville {Fès, Rabat,..}
- Relation: est un ensemble d’attributs qui définissent un fait. (Un
étudiant possède un nom, un prénom, CNE…).
- Exemple: Etudiant(CNE, nom, prenom, date_naissance).
- Tuple (n-uplet) : ensemble des valeurs des attributs.
- Correspondant à un enregistrement d’une entité.
Modèle relationnel (2)
CNE Nom Prénom Date_naissance E1 Ali Kamal 15/12/ E2 Soufiane Allali 10/04/
- Clé étrangère:
- Fait référence à la clé primaire d'une autre table.
- Exemple:
- Classe(Code _ classe, nom).
- Etudiant(CNE, Nom, Prénom, Date_naissance, Code_classe)
Modèle relationnel (4)
CNE Nom Prénom Date_naissanc e
Code_classe
E1 Ali Kamal 15/12/1998 C E2 Soufiane Allali 10/04/2000 C
- Schéma d'une relation
- Composé du nom de la relation et de la liste de ses attributs.
- Les attributs clés étant soulignés.
- Exemple:
- Etudiant(CNE, Nom, Prénom, Date_naissance)
- Une base de données relationnelle est un ensemble de
schémas relationnels.
Modèle relationnel (5)
Schéma^ Etudiant
Enregistrements
CNE Nom Prénom Date_naissanc e
Code_classe
E1 Ali Kamal 15/12/1998 C E2 Soufiane Allali 10/04/2000 C
- Exemple :
- Soit le schéma de relation FOURNISSEUR (Nom_Fournisseur, Adresse,
Produit, Prix).
Une relation (table) correspondant à ce schéma pourra éventuellement
contenir plusieurs produits pour un même fournisseur. Dans ce cas,
l'adresse du fournisseur sera dupliquée dans chaque n-uplet (redondance).
Si on souhaite modifier l'adresse d'un fournisseur, il faudra rechercher et
mettre à jour tous les n-uplets correspondant à ce fournisseur.
Si on insère un nouveau produit pour un fournisseur déjà référencé, il
faudra vérifier que l'adresse est identique.
Si on veut supprimer un fournisseur, il faudra retrouver et supprimer
tous les n-uplets correspondant à ce fournisseur (pour différents produits)
dans la table.
- Ces anomalies n'apparaitront pas si l’on décompose le schéma initial de
base de données.
Modèle relationnel (7)
- La normalisation s’appui sur la dépendance fonctionnelle.
- La notion de DF vise à caractériser des relations qui peuvent être
décomposées sans perte d'information.
- Définition
- Une dépendance fonctionnelle (DF) entre les attributs X et Y de la
relation R, notée XY, exprime que la connaissance d'une valeur
de X (déterminant), implique la connaissance d’une seule valeur de
Y(déterminé).
- Exemple : NuméroClient NomClient
- N.B: la réciproque n’est pas forcément vraie.
- Il existe trois formes normales principales caractérisant les tables
relationnelles: 1FN, 2FN et 3FN.
Formes normales
- Deuxième forme normale (2FN)
- On dit qu'une relation est en 2FN si:
- Elle est en 1FN.
- Un attribut non clé ne dépend pas d'une partie de la clé mais de toute la clé. »
- Elimination des dépendances entre partie de clé et attributs non clé
- Exemple :
- DFs : Id_fournisseur--> adresse et (Id_fournisseur, ID_article) --> prix
Fournisseur Id_fournisseur Adresse Id_article prix
Fournisseur Id_fournisseur Adresse
Produit Id_Article Id_fournisseur Prix
Formes normales (3)
La relation Fournisseur est en 2FN
- Troisième forme normale (3FN)
- Elle est en 2FN.
- Tout attribut non clé ne dépend pas d'un autre
attribut non clé
Exemple:
- DF: Modèle--> carburant, puissance
- La décomposition en isolant la DF non conforme
- en 3FN donne les deux relations suivantes:
Voiture Id_Voiture Carburant Modèle Couleur Puissance
Voiture Id voiture Modèle couleur
Modèle
Modèle Carburant puissance
Formes normales (4)