Ecole Polytechnique Universitaire de Marseille
Département Génie Industriel et Informatique
3 ième année

2021-2022


TITRE DU COURS : INTRODUCTION AUX BASES DE DONNEES RELATIONNELLES

NOM DE L'INTERVENANT : Bernard ESPINASSE

OBJECTIFS VISES PAR LE COURS :

L'objectif visé par ce cours est d’introduire le concept de base de données et l’outil SGBD (Système de Gestion de Bases de Données). On s’intéresse essentiellement aux bases de données et SGBD de type « Relationnel ». L'accent est mis sur la conception d'un bon schéma d'une base de données relationnelle centralisée (non répartie) et à l'utilisation des SGBD pour l’implémenter et l’exploiter. Après avoir rappelé les différents types d'organisations et d'exploitations de fichiers, on développe l'intérêt des bases de données et les objectifs liés aux SGBD. En référence au rapport ANSI/SPARC, on définie les différents niveaux de description d'une base de données (conceptuel, logique et physique). On présente ensuite le modèle Entité-Relation, puis, plus en détail, le modèle Relationnel de CODD, en insistant sur la conception d’un bon schéma de base de données (dépendances fonctionnelles, théorie de la normalisation,...). Le passage du modèle Entité-Relation au modèle Relationnel est étudié. On traite ensuite de la manipulation de données dans le modèle Relationnel en présentant l’algèbre et des calculs relationnels ainsi que les langages qui en résultent, QUEL, QBE et surtout SQL.

PREREQUIS : connaissance informatique de base.

OUVRAGES DE REFERENCE
    1 - Gardarin G., "Bases de données objet et relationnel", Edition Eyrolles, 1999 (ISBN : 2-212-09060-9).
      * Téléchargement livre Gardarin :  Livre Gardarin
    2 - Nanci D., Espinasse B, "Ingénierie des systèmes d'information : MERISE 2°génération",
      Vuibert Informatique, 4°édition, 2001 ( ISBN : 2-7117-8674-9).
      * Téléchargement livre Nanci-Espinasse :  Livre Merise

PROGRAMME
(séances de 2 heures)

Séance 1:  Présentation du cours
Rappels sur les fichiers :
- Mémoire secondaire, indépendance programme-mémoire secondaire, notion de fichier, opérations sur les fichiers, utilisations des fichiers, activité d'un fichier,
- La gestion et l'exploitation des fichiers, fonctions de base, fonctions d'exploitation, organisations et méthodes d'accés sélectives,
Exemples d'organisation Indexées (ISAM, VSAM, IS3, ..)
Lecture recommandée : Livre 1, chapitre III (sections 1 à 5) et cas Cycloprovence
Supports
Rappels de gestion de fichiers

Séance 2:  Introduction aux concepts de Base de données et de SGBD :
- Intérêt des bases de données, des chaînes de traitements aux modèles de données, application autour d'une base de données,
- Niveaux de description d'une bases de données (ANSI/SPARC),
- Systèmes de Gestion de Bases de données : définition d'un SGBD, historique des SGBD, objectifs des SGBD, architecture générale,
- Aspects organisationnels : les rôles d'administrateurs de bases de données et de données
Lecture recommandée : Livre 1, chapitre II (sections 1 à 4)
Supports:
Introduction aux bases de données

Séance 3:  Le modèle Entité-Relation
- Historique et présentation du formalisme
- Les concepts de base : entité, relation, propriété, cardinalités, dépendances fonctionnelles
- Liste variables de propriétés, décomposition de relation n-aires, modélisation du temps
Lecture recommandée : Livre 2, chapitre 7
Supports:
Modèle Entité-Relation - base
Modèle Entité-Relation - complements
* Editeur de Modèle Conceptuel de Données - Entité-Relation (Mac et PC) :  Looping (gratuit) et JMerise

Séance 4: Travaux dirigés (TD) sur le modèle Entité-Relation

Séance 5: Le modèle Relationnel de CODD : organisation des données
- Concept de relation
- Dépendances fonctionnelles (définition, graphes,..), dépendance multi-valuées
- Structuration des relations : La normalisation des relations
Supports:
Modèle Relationnel - normalisation

Séance 6:  Le modèle Relationnel de CODD : organisation des données
- Passage du modèle Entité-Relation au modèle Relationnel
- Estimation des volumes d'une base de données relationnelle
Lecture recommandée : Livre 2, chapitre 13
Supports:
Passage Entité-Relation au Relationnel

Séance 7:  Le modèle Relationnel de CODD : manipulation des données
- Algèbre relationnelle
- Calcul relationnel de tuples et Calcul relationnel de domaine
Lecture recommandée : Livre 1, chapitre IV (sections 4)
Supports:
Algèbre et Calcul relationnels

Séance 8:  Le langage SQL-1 et 2
- Opérations de base liées à l’algèbre relationnelle : SELECT, Projection, Sélection, Jointures, Opérations ensemblistes, Division, …
- Imbrication de requêtes : simples, ANY, ALL, EXIST, …
- Fonctions de calcul : COUNT, AVG, SUM, MAX, MIN, …
- Opérations de mises à jour : INSERT, UPDATE, DELETE
- Opérations additionnelles : création de tables, vues, autorisations d’accès, …
Lecture recommandée : Livre 1, chapitre VII (sections 1 à 4)
Supports:
Langage SQL

Séance 9: Travaux dirigés (TD) sur le langage SQL

Examen SANS documents le ....

RESSOURCES LIEES AU COURS:

- Tutorial SQL en ligne de Jérôme DARMON: http://eric.univ-lyon2.fr/~jdarmont/tutoriel-sql/
- Editeur de Modèle Conceptuel de Données - Entité-Relation (Mac et PC) :

       - Looping (gratuit)

       - JMerise

RESSOURCES LIEES A L'ENSEIGNEMENT PRATIQUE ASSOCIE (EP)

- Sujet de l'EP : Lien
- Rendu vide de l'EP : Lien
- Memo SQL : Lien
- PyGreSQL-Basic examples: Lien
- PyGreSQL-example : Lien