Matière : Bases de Données

Unité d’enseignement fondamentale

Crédits : 5

Coefficient : 3

Objectifs de l’enseignement : 

Ce cours devrait permettre à l’étudiant d’identifier l’intérêt de structurer et manipuler les données sous forme tabulaire. A travers le modèle relationnel et l’algèbre
relationnelle sous-jacente orientés plus vers l’aspect pratique, l’étudiant devrait comprendre l’importance de structurer les données, le concept d’indépendance des données et des traitements, ainsi que l’intégrité et la cohérence des données.

Connaissances préalables recommandées : L’étudiant est sensé comprendre ce que c’est des fichiers (textes, binaires ou typés) et les avoir créés avec les langages préalablement étudiés.

Contenu de la matière :


Chapitre 1 : Présentation des bases de données
1. Notions de fichiers (intérêts et limites)
2. Définition de base de données
3. Définition de système de gestion de base de données
4. Types de modèles de données (sémantique, entité-association, hiérarchique, réseau, relationnel)

Chapitre 2 : Modèle relationnel
1. Définition du modèle relationnel
2. Concepts de base (Attribut, Tuple, Domaine, Relation)
3. Schéma de relation
4. Normalisation
a. Clé de relation et dépendance fonctionnelle (Clé primaire et clé étrangère)
b. Contraintes d’intégrité
c. Formes normales (1FN, 2FN, 3FN, FN de Boyce-Codd)
d. Schéma de base de données
5. Modèle relationnel logique (SQL)
a. Table, colonne, et ligne
b. Description de SQL (StructuredQueryLanguage)
c. Définitions de données

  • Création de table (CREATE)
  • Modification de schéma (ALTER, DROP)

d. Manipulation des données (INSERT, UPDATE, DELETE)

Chapitre 3 : Algèbre relationnelle
1. Définition
2. Opérations et opérateurs unaires
a. Sélection
b. Projection
c. Traduction en SQL

  • Requêtes simples (SELECT-FROM)
  • Sélection de colonne (clause WHERE)
  • Tri de résultats (ORDER BY)

3. Opérations et opérateurs ensemblistes
a. Union
b. Intersection
c. Différence
d. Produit cartésien
e. Jointure (Thêta, naturelle, équijointure, externe)
f. Division
g. Traduction en SQL

  • Opérateurs d’union, d’intersection, et de différence
  • Produit cartésien (sans jointure)
  • Jointure de tables (condition de jointure)
  • Fonctions d’agrégat
  • Clause GROUP BY … HAVING

Mode d’évaluation : Examen (60%) , contrôle continu (40%)

Références:

  • Bases de données. Georges Gardarin. 5ème édition 2003
  • SQL Les fondamentaux du langage. Eric Godoc et Anne-Christine Bisson. Edition Eni. 2017
  • Bases de données : concepts, utilisation et développement. Jean-Luc Hainaut. Édition DUNOD. 2015