Systèmes de gestion de bases de données
Le cours de bases de données, destiné aux étudiants de deuxième année et centré sur le logiciel Oracle, s'est donné entre septembre 2010 et mai 2011.
Le but du cours était de proposer une introduction générale à la pratique des bases de données relationnelles, sans insister trop sur les caractéristiques précises d'un produit commercial particulier. L'accent est mis sur l'utilisation des bases de données en programmation. Le rôle du programmeur étant de traduire en instructions SQL les intentions de l'utilisateur exprimées au moyen d'une interface masquant la complexité technique des requêtes. La modélisation de la base de données relève pour moi de l'analyse et était évoquée dans le cours consacré à cette matière (voir ce cours)
- introduction et comparaison des différents types "historiques" de base de données
- manipulation de bases existantes avec les instructions SELECT, INSERT, UPDATE et DELETE
- dans une seule table
- dans plusieurs tables (jointures et opérations ensemblistes)
- utilisation des fonctions d'agrégation
- requêtes imbriquées
- fonctions prédéfinies
- création des tables
- techniques de maintien de l'intégrité des données (clés primaires et étrangères, contraintes et triggers)
- sécurité des données (utilisateurs et gestion des droits)
- programmation interne à la base de données
Dans une partie annexe du cours, une initiation rapide à la création d'un site Web au moyen d'HTML, PHP et CSS a mené à l'utilisation de données maintenues par un serveur pour réaliser des pages dynamiques.
- Chapitre 1 : Introduction aux SGBD
- Chapitre 2 : Le modèle relationnel
- Chapitre 3 : Installation et prise en main des outils
- Chapitre 4 : Requêtes simples
- Chapitre 5 : Requêtes sur plusieurs tables
- Chapitre 6 : Synthèses, calculs et requêtes imbriquées
- Chapitre 7 : Extensions propriétaires
- Chapitre 8 : Modification des données
- Chapitre 9 : Création d'une base de données (après synthèse 2me partie)
- Chapitre 10 - Cohérence des données
- Chapitre 11 - Protection des données
- Chapitre 12 - Programmation PL/SQL
Première partie : notions préliminaires
Deuxième partie - SQL (DML)
Troisième partie - SQL (DDL et DCL)
Quatrième partie - Focus sur Oracle
- Enoncés
- Solutions des exercices (série 1)
- Scripts pour la deuxième série
-
- - Enoncés
- Solution des exercices (série 2)
- Scripts pour la troisième série (garage)
-
- - Enoncés
- Solution des exercices (série 3)
- Enoncés
- Solution des exercices (série 4)
- Script pour la série 5
-
- - Série 5 : exercices de DDL
- Série 5 : exercices de DDL (Solutions)
- Définition des tables
- Contenu des tables
-
- - Questions et solutions de l'examen de mars
- Exercice sur la protection des données (maison d'édition)
- Correction de l'exercice sur la protection des données
Première série : requêtes sur une seule table
Deuxième série : requêtes sur plusieurs tables
Troisième série : calculs et requêtes imbriquées
Quatrième série : fonctions standard et propriétaires
Cinquième série : création et modification des tables
Examen de mars 2011
Protection des données (maison d'édition)
- Système Oracle Express (version gratuite limitée)
- Client SQL Developer gratuit
- XAMPP : serveurs Apache, mySQL, PHP et autres outils Web
- Firefox : navigateur Web extensible pour développer
- Plugin pour firefox : Web Developer
- Plugin pour firefox : Aardvark
- Tables et vues de la facturation (iso)
- Tables et vues de la facturation (utf8)
- Tables des requêtes des notes de cours (schéma Demo)
Logiciels à télécharger - Base de données Oracle
Logiciels à télécharger - Réalisation d'un site Web
Scripts d'installation
- Chapitre 1 : Clients et serveurs
- Chapitre 2 : Réalisation d'une page simple
- Théorie 3 : Concepts de base de PHP
- Théorie 4 : Echange d'informations entre client et serveur
- Théorie 5 : mySQL et Internet
- Exemple d'un site commenté (football)
- Sources du site (PHP + SQL)
- Lien vers le site
- Exemple d'une mise en page simple