Une module d'introduction à SQL prévue pour être réalisée sur 4 jours.
Le stagiaire doit être capable, à l'issue du cours, de concevoir une base de données relationnelles correspondant à un schéma de données métier et d'en extraire les données (lecture, ajout, mise à jour, suppression).
Les fondamentaux :
- Expliquer l'utilité du SQL
- Apprendre à exécuter des requêtes de sélection
- Apprendre à exécuter des requêtes d’insertion
- Apprendre à exécuter des requêtes de mise à jour
- Apprendre à exécuter des requêtes de suppression
- Apprendre la notion d'intégrité des données
Les compléments :
- Connaître l'architecture d'un RDBMS
- Délivrer un code SQL performant
- Concevoir une base de données prête pour la production
- Assurer la sécurité, la disponibilité et la protection des données privées
- Assurer la sécurité des connexions au RDBMS
- Etre efficace rapidement, charger des données, analyser, transformer
- Difficultés fréquentes sur les projets bases de données et solutions possibles
Capacités à acquérir :
- Traduire un dossier de conception de base de données en SQL
- Connaître la démarche pour gérer un projet SQL
- Etre en mesure d'exploiter les données d'une base SQL
Savoir-faire technique :
- Connaissance de l'environnement et du vocabulaire
- Connaissance du langage SQL
- Connaissance des règles de conception des données
- Connaissance des concepts d'intégrité et de transaction
- Connaissance des mécanismes d'authentification, de la gestion des droits et de la sécurité du RDBMS
Mode d'évaluation
- Exercices
- QCM
- Mini-projet
- Livre accessible en ligne concernant SQL
- Livre de référence Database Systems: The Complete Book
- Une approche de l'optimisation des applications sous MySQL : High Performance MySQL 3e
- Un livre pour comprendre l'architecture et le fonctionnement de Postgresql : Postgresql : architecture et notions avancées
- Une méthode et des techniques pour écrire du code SQL prêt pour la production : The art of SQL
- Des bonnes pratiques pour écrire du code SQL : Joe Celko's SQL for smarties
- Optimiser le plan d'exécution des requêtes SQL : SQL tuning
- Documentation de référence Mysql
Nous travaillons avec la version 8 du serveur Mysql en community edition.
Le workbench peut également être intéressant pour ceux qui souhaitent un environnement graphique https://dev.mysql.com/downloads/workbench/.
Le client en ligne de commande est également utile https://dev.mysql.com/downloads/shell/.
La version doit être choisie en fonction de l'OS présent sur leur machine.
Nous travaillons à partir de l'exemple de base de données fourni par Mysql https://dev.mysql.com/doc/employee/en/sakila-structure.html.
- Premier support de cours, présentation générale des RDBMS
- Installation de l'environnement
- Chargement de la base de données
- Premiers exercices sur les requêtes de sélection
- Premiers exercices sur insertion, suppression, mise à jour, création de table
- QCM1 https://goo.gl/forms/Qqdnz33cFleavOdI3
- Exemple insertion, mise à jour, suppression vus en cours
- QCM2 https://goo.gl/forms/fr6XmptnCJk2liVA2
- Quelques éléments concernant la sauvegarde des bases de données
- Des exemples de jointures externes
- Des exemples d'utilisation des vues des triggers, des fonctions et procédures stockées
- Un dernier QCM sur les éléments vus en cours https://goo.gl/forms/nu0TPMwZvSa6GSgj1