(3.0 cr.)

Objectifs généraux

  • Distinguer les principes des bases de données relationnelles, leur architecture et leurs usages.
  • Concevoir des bases de données relationnelles selon les meilleures pratiques de modélisation.
  • Exploiter des données à l'aide du langage SQL dans des contextes concrets.
  • Intégrer les outils relationnels à un processus analytique en science des données.

Quelques objectifs spécifiques parmi d'autres

Identifier les composants et le rôle d'un système de gestion de bases de données relationnelle; Situer les bases dans un contexte client-serveur; Modéliser un système réel avec l'approche entité-association; Transformer un schéma conceptuel en modèle relationnel; Appliquer la normalisation jusqu'à la troisième forme normale; Écrire des requêtes SQL de sélection, de filtrage et de tri; Réaliser des jointures et des agrégations; Décrire les principes de sécurité d'un système de gestion de bases de données relationnelle; Explorer des bases volumineuses avec SQL; Connecter une base de données à un outil analytique.

Données vs informations vs connaissances ; Systèmes de gestion de bases de données (SGBD : PostgreSQL, SQLite, MySQL) ; Types de bases (relationnelles vs NoSQL : MongoDB, Cassandra) ; Architecture client-serveur (PostgreSQL, pgAdmin) ; Cycle de vie d'un projet de base de données (analyse, modélisation, implémentation, exploitation) ; Modélisation conceptuelle (entités, attributs, relations, cardinalités) ; Diagrammes E-A (Chen, UML) ; Outils de modélisation (dbdiagram ; io, draw ; io) ; Modélisation relationnelle (tables, clés primaires et étrangères, contraintes d'intégrité : unicité, nullabilité, référentielle) ; Normalisation (1NF, 2NF, 3NF) ; Analyse des anomalies (redondance, insertion, suppression) ; SQL Requêtes de base (SELECT, FROM, WHERE, ORDER BY) ; Types de données SQL (INTEGER, VARCHAR, DATE, BOOLEAN) ; Jointures (INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN) ; Agrégations (COUNT, SUM, AVG) ; GROUP BY ; HAVING ; Sous-requêtes (dans SELECT, FROM, WHERE) ; Vues (création, utilisation, sécurité) ; Requêtes avancées (CASE, COALESCE, fonctions temporelles) ; Manipulation des données (INSERT, UPDATE, DELETE) ; Transactions (BEGIN, COMMIT, ROLLBACK) ; Contraintes référentielles ; Indexation (index simples, composés) ; Plans d'exécution (EXPLAIN) ; Optimisation de requêtes ; Sécurité (utilisateurs, rôles, privilèges, SQL Injection) ; Projet intégrateur (modélisation, requêtes, optimisation, sécurité, documentation) ; SQL pour la science des données (BigQuery, pandas ; read_sql).

Formule pédagogique : Cours Magistral

(03/2026)


Appartenance départementale

Informatique et mathématique

Programmes dans lesquels se trouve ce cours

0711 Programme court de premier cycle en informatique pour étudiants en séjour d'études
4202 Certificat en informatique
4667 Certificat en cybersécurité défensive
4697 Certificat en développement de jeux vidéo
4810 Certificat en science des données et intelligence d'affaires
6596 Baccalauréat en développement de jeux vidéo
6710 Baccalauréat en informatique de la science des données et de l'intelligence d'affaires
6712 Baccalauréat en sciences du langage
7833 Baccalauréat en informatique
7943 Baccalauréat en génie informatique
9128 Microprogramme de premier cycle en programmation informatique
9129 Programme court de premier cycle en programmation informatique