Accueil
Recherche
Publications
Activités
Enseignement
Supports
Synthèse
Divers
Errance Chromatique
Réalisation fablab
D'où viens-je ?
Le Masque SF
Docs
SQL ISO/IEC 9075
Oracle
PostgreSQL
MySQL
CM
Support L2 Info
Support L3 Info
SGBD
Cours L2 Informatique
Modalités de contrôle des connaissances L2
Support cours SGBD L2 Maths-Info
Introduction aux bases de données
▼
Cours Bases de données
Plan du cours
Vous avez dit "Bases de données" ?
Et les "SGBD" dans tout ça ?
Quels types de SGBD ?
Objectifs cette année en L2
Installation de MySQL sur Linux Ubuntu
Installation de PostgreSQL sur Linux
Connexion au serveur pédagogique
Les tables dans les bases de données
Interrogation des données avec SQL (DQL)
▼
SQL : Structured Query Language
DQL : Data Query Language
Sélection de colonnes et Projection
Restriction ou Sélection de lignes
Sélection de lignes avec SQL
Suppression des doublons
Gestion des valeurs absentes
Trier les lignes : la clause ORDER BY
Fonctions d'agrégation
La clause GROUP BY
La clause HAVING
Alias de colonnes ou de tables
Les sous-requêtes (1/3)
Les sous-requêtes (2/3)
Les sous-requêtes (3/3)
L'opérateur EXISTS
Sélections sur plusieurs tables
Produit Cartésien en algèbre relationnelle
Produit Cartésien en SQL
Jointure en algèbre relationnelle
Jointure interne (SQL)
Jointure externe (SQL)
Modélisation des données avec le modèle Entité/Association
▼
Modélisation d'une BD
Informations, Données, BD et SGBD
Modèle Entité/Association
Attributs
Un exemple : l'entité Professeur
Notion de Clés
Associations et cardinalités
Les 3 type d'associations
Schémas E/A
Associations usuelles
Conventions graphiques du modèle E/A
Depuis un Modèle E/A vers un Modèle Relationnel
Exemple
Implantation des données avec SQL (DDL)
▼
DDL : Data Definition Language
Schéma de relation et table SQL
Domaines de définition SQL
Création de tables
Contraintes de domaines et d'intégrités (1/2)
Contraintes de domaines et d'intégrités (2/2)
Création conditionnelle de tables
Création de tables avec SELECT
Création de séquences
Automatisation de l'attribution des valeurs de clés
Édition des données avec SQL (DML)
▼
DML : Data Manipulation Language
Insertion de nouveaux enregistrements
Mise à jour de données existantes
Suppression de données
Retour sur DDL
▼
Contraintes d'intégrité et clés étrangères
Mises à jour et suppressions automatiques
Création de vues
Suppression de tables, vues, ...
Modification de tables sous PostgreSQL
Modification de tables sous MySQL
Contrôle d'accès et utilisateurs
▼
DCL : Data Control Language
Les différents privilèges
GRANT et REVOKE
Création et suppression d'utilisateurs
Modifier son mot de passe
Cours L3 Informatique
Modalités de contrôle des connaissances L3
Support cours SGBD L3 Info
Les SGBD : origines, objectifs, relationnel
▼
Systèmes de Gestion de Bases de données
Plan du cours
Vous avez dit "Bases de données" ?
Et les "SGBD" dans tout ça ?
Quels types de SGBD ?
Objectifs cette année L3
Le Modèle Relationnel
▼
Le modèle relationnel
Modèle relationnel
Définitions
Exemple
n_uplet
Propriétés des n_uplets
Les types de relations
Propriétés des relations
Schéma d'une relation
Algèbre Relationel
▼
Algèbre relationnelle
Union
Intersection et différence
Produit Cartésien
Restriction et Projection
Jointure
Division
Exemple de division
Définition alternative
Semi-jointure et jointure externe
Le Modèle Relationnel (suite)
▼
Point Route Modèle Relationnel
Dépendance Fonctionnelle
Propriétés des dépendances fonctionnelles
Règles d'Armstrong
Calcul de F
+
Couverture minimale de F
Clé et df
Clé, df et propriétés utiles
Formes normales 1NF et 2NF
Forme normale 3NF
Forme normale de Boyce-Codd (BCNF)
Décomposition d'un schéma de relation
Recherche d'une couverture minimale d'un ensemble de df
Algorithme de Bernstein
Illustration du rôle de l'étape 3 de l'algo
Étude de Cas
Étude de cas (suite)
Dépendance multivaluée
Forme normale 4NF
Dépendances de jointure
5NF
Le modèle Entité/Association
▼
Modélisation d'une BD
Informations, Données, BD et SGBD
Modèle Entité/Association
Attributs
Notion de Clés
Un exemple : l'entité Professeur
Associations et cardinalités
Les 3 type d'associations
Schémas E/A
Notion de Clés
Entités faibles
Associations usuelles
Un exemple : l'entité Professeur
Conventions graphiques du modèle E/A
Depuis un Modèle E/A vers un Modèle Relationnel
Exemple
SQL : Structured Query Language
▼
SQL : Structured Query Language
SQL : Structured Query Language
SQL : DDL (Partie 1)
▼
DDL : Data Definition Language
Schéma de relation et table SQL
Domaines de définition SQL
Création de tables
Contraintes de domaines et d'intégrités (1/2)
Contraintes de domaines et d'intégrités (2/2)
Création conditionnelle de tables
Création de tables avec SELECT
Création de séquences
Automatisation de l'attribution des valeurs de clés
SQL : DML
▼
DML : Data Manipulation Language
Insertion de nouveaux enregistrements
Mise à jour de données existantes
Suppression de données
Contraintes d'intégrité et clés étrangères
Mises à jour et suppressions automatiques
SQL : DDL (Partie 2)
▼
Retour sur DDL
Création de vues
Création d'index
Suppression de tables, vues, ...
Modification de tables sous Oracle
Modification de tables sous PostgreSQL
Modification de tables sous MySQL
SQL : DQL (Algèbre relationnel et SQL)
▼
DQL : Data Query Language
DQL et Algèbre relationnelle
Sélection de colonnes et Projection
Restriction ou Sélection de lignes
Sélection de lignes avec SQL
Suppression des doublons
Gestion des valeurs absentes
Trier les lignes : la clause ORDER BY
Fonctions d'agrégation
La clause GROUP BY
La clause HAVING
Alias de colonnes ou de tables
Sélections sur plusieurs tables
Produit Cartésien en algèbre relationnelle
Produit Cartésien en SQL
Jointure en algèbre relationnelle
Jointure interne (SQL)
Jointure externe (SQL)
Les sous-requêtes (1/3)
Les sous-requêtes (2/3)
Les sous-requêtes (3/3)
L'opérateur EXISTS
Composition de requêtes
Union
Intersection et différence
La clause LIMIT
Quelques fonctions disponibles
PL/pgSQL
▼
PL/pgSQL : Procedural Language for PostgreSQL
Structure de PL/pgSQL
Déclarations
Manipulation de tableaux
Types composites
Fonctions et Procédures
Instructions simples
Récupération de résultats depuis un SELECT
Exécution dynamique de requêtes
Structures de contrôle simples
Boucles (1/2)
Boucles (2/2)
Gestion des erreurs
Messages et erreurs
Les Curseurs (1/4)
Les Curseurs (2/4)
Les Curseurs (3/4)
Les Curseurs (4/4)
Fonctions tables (
en SQL
)
Fonctions tables (
en PL/PGSQL
)
Procédures déclenchées (Triggers)
Paramètres automatiques d'un trigger
Création et modification des triggers
Exemples sur la table outlaw
Trigger avant chaque insertion
Trigger après toutes les insertions
Trigger annulant les insertions
Trigger modifiant les insertions
Combinaison de Triggers (1/2)
Combinaison de Triggers (2/2)
Oracle PL/SQL
▼
PL/SQL : Procedural Language for Oracle-SQL
Structure de PL/SQL
Déclarations
Structures de contrôle simples
Les boucles
Les curseurs
Les attributs d'un curseur
Traitement complet d'un curseur explicite
Traitement simplifié
Traitement simplifié avec FOR-LOOP
Curseur implicite
Les Curseurs paramétrés
Mise à jour des données avec un curseur
Gestion des erreurs
Les procédures
Les fonctions
Procédures déclenchées (Triggers)
Exemple de trigger
Attribution automatique d'un numéro de clé
Affichage sur la sortie standard
Fonctions Tables
FAQ
Implantation et algorithmique des SGBDR
▼
Implémentation du modèle relationnel
Caractéristiques des disques durs
Temps d'accès aux informations
La technologie RAID
Implantation des relations dans les fichiers
Les fichiers ISAM
L’implémentation des fichiers ISAM : les B-trees
Les tables de hachage (
hash
)
Les index en SQL
Paramètres et critère de
Opérateurs ensemblistes : ∪ et −
Sélection et projection
Produit cartésien et jointure
Jointure avec index
Optimisation de requêtes (1)
Optimisation des requêtes (2)
Optimisation des requêtes (3)
Optimisation des requêtes (4)
Principes généraux de l'optimisation
SQL : DCL
▼
DCL : Data Control Language
Les différents privilèges
GRANT et REVOKE
Création et suppression d'utilisateurs
Modifier son mot de passe
Les rôles et les groupes
Administration des SGBD
▼
Installation de MySQL sur Linux Ubuntu
Administration MySQL
Installation de PostgreSQL sur Linux
Administration PostgreSQL
JDBC
▼
JDBC : Java DataBase Connectivity
API JDBC
Fonctionnement
Architecture à 2 niveaux
Architecture
Drivers JDBC
Les 8 interfaces incontournables
Quelques classes
Quelques Exceptions
Déroulement d'un accès à un SGBD
Enregistrement du driver
Interface Driver
Connexion à la base
Création d'un Statement
Exécution d'une requête
Traitement des résultats (1)
Traitement des résultats (2)
Types de données JDBC/SQL
Suite des équivalences
Gestion de NULL
Fermeture de la connexion
Exemple complet
Accés aux meta-données
DatabaseMetaData
ResultSetMetaData
PreparedStatement
Création d'une instance de PreparedStatement
CallableStatement
Exemple sans valeur de retour
Récupération du Résultat