Cours d'introduction aux bases de données relationnelles pour la filière Ingénierie des Médias, HEIG-VD.
Ce document est mis à jour au fur et à mesure du semestre avec les informations du cours, le déroulé des TP et les ressources.
Slides en ligne : comem-modeldon.onrender.com
- Structurer des données dans un modèle relationnel adapté à un domaine métier
- Modéliser un problème réel sous forme d'entités, d'attributs et de relations
- Traduire un diagramme entité-association en schéma SQL exploitable
- Interroger et transformer des données pour répondre à des besoins métier
- Analyser des données structurées pour produire des indicateurs et des statistiques
| Outil | Usage |
|---|---|
| draw.io | Dessiner le diagramme E-R dans le navigateur, l'exporter en image et en fichier .drawio |
| Environnement de TP | VS Code, SQLite et Database Client prêts, dans Codespaces ou en local avec Docker |
| VS Code | Éditeur du cours : écrire et exécuter le SQL |
| SQLite CLI | Exécuter des requêtes dans le terminal |
| Database Client (extension VS Code) | Explorer les tables d'un fichier .db dans l'éditeur |
Ce dépôt contient les slides. Les étudiant·e·s ne le clonent pas : leur environnement de travail est le dépôt comem-modeldon-tp, qui ne contient que VS Code et SQLite.
- Ouvrir draw.io dans le navigateur, aucun compte à créer
- Ouvrir l'environnement de TP : dans Codespaces, ou en local avec Docker et l'extension VS Code Dev Containers (Reopen in Container)
- Vérifier SQLite dans le terminal
sqlite3 --versionLes fichiers d'exercice se téléchargent depuis les liens des slides, puis se glissent dans l'explorateur de VS Code. Git n'est pas nécessaire.
Les trois niveaux de modèle structurent le semestre : conceptuel au cours 02, logique au cours 03, physique au cours 04. Les cours 05 et suivants sont en cours d'écriture et n'affichent pour l'instant qu'une page d'attente.
| # | Module | Contenu |
|---|---|---|
| 01 | Introduction | Donnée · Information · Connaissance · Du tableur à la base · SGBD · Diagramme E-R |
| 02 | Modèle conceptuel | Modèle relationnel · Notation UML · Entité · Attribut · Identifiant · Contraintes · Relation · Cardinalités · Nommage |
| 03 | Modèle logique | Entité en table · Clé primaire · Clé étrangère · Contraintes des clés · Relation 1:N · Relation N:M · Table de liaison · Clé primaire composite · Normalisation · 1NF · 2NF · 3NF · Champs à texte libre · Généralisation |
| 04 | Modèle physique | SQLite · Types · CREATE TABLE · Contraintes de colonne · Clé étrangère · Intégrité référentielle · Modes de suppression · Clé primaire composite · DROP TABLE · ALTER TABLE |
| 05 | Interroger les données | SELECT · FROM · WHERE · ORDER BY · INSERT · UPDATE · DELETE |
| 06 | Connecter les données | Donnée morcelée · INNER JOIN · LEFT JOIN |
| 07 | Analyser les données | Agrégation · COUNT · SUM · AVG · GROUP BY · HAVING · CREATE VIEW |
| 08 | Indexer et optimiser | Parcours complet · Index · EXPLAIN QUERY PLAN · Coût d'un index · Dénormalisation |
| 09 | La donnée semi-structurée | JSON · Syntaxe · Comparaison avec le modèle relationnel |
| Composante | Poids | Période |
|---|---|---|
| Examen intermédiaire | 50% | Mi-semestre · Format papier · Questions ouvertes · QCM |
| Examen final | 50% | Jan-fev · Format papier · Questions ouvertes · QCM |
L'examen intermédiaire porte sur la modélisation et la création des tables, cours 01 à 04. L'examen final porte sur l'ensemble du semestre.
Les TP ne sont pas notés. Ils servent d'entraînement aux deux examens : rien n'est rendu, rien n'est corrigé formellement. Les questions soulevées en séance sont reprises au début de la séance suivante.
Les exemples présentés en classe prennent une bibliothèque : livres, auteurs, rayons, lecteur·rice·s, emprunts. Le fil rouge des TP reste le musée : la classe voit la notion sur la bibliothèque, puis l'applique à son propre modèle.
Tout au long du semestre, les TP portent sur le même musée fictif : modélisation, création des tables, insertion des données, interrogation et analyse. Chaque séance applique au musée la notion qu'elle vient d'introduire, si bien que le modèle grossit semaine après semaine. Rien n'est noté : le fil rouge sert à construire le sujet pas à pas et à préparer les examens.
La première séance de TP part d'une seule question, sans outil : quelles données un musée doit-il gérer pour fonctionner ?
| Étape | Thème | Production |
|---|---|---|
| 1 | Modélisation | Diagramme E-R du musée, dessiné dans draw.io, exporté en image et gardé en .drawio |
| 2 | SQLite | Base .db avec tables et données de test |
| 3 | SQL | Ensemble de requêtes commentées |
Ce matériel est mis à disposition sous licence Creative Commons Attribution 4.0 International (CC BY 4.0).
Vous êtes libre de partager et adapter ce contenu, à condition de créditer l'autrice.
Slides construits avec comem-cours-template ·