CONNAISSANCES PREALABLES
- Maîtriser les concepts de base du modèle relationnel
PROFIL DES STAGIAIRES
- Cette formation au langage SQL s'adresse aux informaticiens et gestionnaires de données
OBJECTIFS
- Décrire les principaux concepts des SGDBR (Système de Gestion des Bases de Données Relationnelles) et d'algèbre relationnelle utilisés dans le langage SQL
- Interroger une base de données avec la clause SQL SELECT
- Utiliser les commandes SQL de mise à jour des données
- Identifier les commandes SQL de début et fin de transaction BEGIN, COMMIT et ROLLBACK
- Présenter les concepts de gestion des privilèges systèmes et objets avec les commandes SQL GRANT et REVOKE
- Créer, modifier et supprimer certaines catégories d'objets (table, index, vues...) avec CREATE, ALTER et DROP
METHODES PEDAGOGIQUES
- La formation est constituée d’apports théoriques, d’exercices pratiques et de réflexions
- Remise d’une documentation pédagogique papier ou numérique pendant le stage
- Mise à disposition d’un poste de travail par participant
METHODES D'EVALUATION DES ACQUIS
- Auto-évaluation des acquis par le stagiaire via un questionnaire
- Attestation de fin de stage adressée avec la facture
FORMATEUR
Consultant-Formateur expert Développement
CONTENU DU COURS Développement
1 - Jour 1
2 - Le relationnel
- Rappels de concepts de base des SGBDR (RDBMS) : Règles de Codd
3 - L'algèbre relationnelle et la logique du SQL
- Opérateurs sur une seule table : projection et sélection
- Opérateurs sur plusieurs tables : union, différence et produit cartésien
- Opérateurs complémentaires : jointure, intersection et division
- Rappels d’algèbre relationnelle applicable au langage SQL
4 - L'interrogation des données
- Tri des résultats ORDER BY
- Opérateurs et fonctions supplémentaires en fonction du SGBDR : Fonctions arithmétiques supplémentaires : modulo, racine carrée, puissance, arrondi, valeur plancher ou plafond…
- Les opérateurs arithmétiques dans la projection et la sélection : Addition
- Recherche de valeurs nulles (IS NULL et IS NOT NULL)
- Recherche d’une chaîne de caractères LIKE (avec% et _)
- Les conditions de recherche WHERE (opérateurs égal, différent, inférieur, supérieur…) avec une condition (prédicat) ou plusieurs conditions (opérateurs booléens NOT, AND, OR)
- Projection d’une ou plusieurs colonnes (avec ou sans éliminer les doublons ALL ou DISTINCT)
- Descriptions des tables de démonstration utilisées pour illustrer les exemples
- Généralités sur les groupes de commandes SQL : DML
- Suite de valeurs IN, intervalle de valeurs BETWEEN
5 - Exemples de travaux pratiques (à titre indicatif)
- Prise en main de l’environnement des travaux pratiques
6 - Jour 2
7 - L'interrogation des données - Suite
- Traitements numériques sur les dates avec les fonctions : TO_DATE
- Les traitements de groupes
- Les regroupements de valeurs (GROUP BY) et leurs conditions (HAVING)
- Jointures standard, jointures externes, auto-jointures et jointures avec syntaxes SQL3 : NATURAL
- Traitements des dates et de l’affichage des dates avec la fonction TO_CHAR
8 - Exemple de travaux pratiques (à titre indicatif)
- Exercices sur la manipulation des dates
- Exercices sur les jointures
- Exercices sur les sous-interrogations
- Exercices sur les traitements de groupe
- Exercices sur les opérateurs algébriques
- Exercices sur les mises à jour
- Exercices sur la création, modification et suppression de tables et de vues
9 - Les jointures
- Jointures standard, jointures externes et auto-jointures
- Jointures avec syntaxes SQL3 : NATURAL
11 - Les sous-requêtes
- Sous-interrogation retournant une seule valeur
- Sous-interrogation retournant plusieurs valeurs (opérateurs IN, ANY et ALL)
13 - Traitements de groupes
- Traitement sur les groupes de lignes résultant d’une sélection avec les fonctions : AVG
- Regroupement du résultat d’une sélection avec GROUP BY
- Sélection des groupes de lignes en fonction d’un critère avec HAVING
- Sous-interrogation de groupe et la corrélation
15 - Jour 3
16 - Opérateurs algébriques sur plusieurs tables
- Opérateurs UNION, MINUS et INTERSECT
18 - Divers
- Structure CASE
- Sous-interrogation scalaire
- Tables dérivées
19 - Mise à jour des données
- Insertion d’une ligne dans une table avec INSERT
- Environnement transactionnel avec BEGIN, COMMIT et ROLLBACK
- Suppression de lignes dans une table avec DELETE
- Mise à jour de lignes dans une table avec UPDATE
- Insertion de lignes dans une table, à partir d’une autre table avec INSERT…SELECT
21 - Gestion des privilèges
- Concepts généraux de la gestion des privilèges des commandes DCL GRANT et REVOKE
22 - Gestion des objets
- Création et gestion des structures de données (tables, vues…) avec les commandes DDL
- Création d’une table CREATE TABLE
- Création d’une vue CREATE VIEW
- Création d’un index CREATE INDEX
- Suppression d’une table DROP TABLE
- Modification de la structure d’une table ALTER TABLE