Programme de Formation Avancée : T-SQL (3 Jours)
Objectif de la formation :
• Maîtriser le langage T-SQL (Transact-SQL) pour créer, manipuler et optimiser les bases de données sur Microsoft SQL Server.
• Développer des compétences avancées en programmation SQL et en gestion des performances.
INTER ENTREPRISE
– Présentiel dans nos locaux ou les vôtres
– Distanciel Online
Retrouvez-nous sur :
Strasbourg, Lille, Lyon, Reims, Genève, Bruxelles, Luxembourg, Frankfort, Karlsruhe, Berlin, Metz
Prix : 2369 € H.T.
INTRA
(Appelez-nous pour obtenir une offre)
Jour 1 : Concepts Avancés de T-SQL
Matinée : Programmation T-SQL avancée (3h)
- Sous-requêtes avancées :
- Utilisation des sous-requêtes corrélées et non corrélées.
- Combinaisons avec EXISTS et NOT EXISTS.
- Cas pratiques pour résoudre des problèmes complexes.
- Expressions Table-Valued :
- Vue d’ensemble des Common Table Expressions (CTE).
- Utilisation pour simplifier des requêtes complexes.
- Application récursive avec CTE (par exemple, hiérarchies organisationnelles).
- Fonctions scalaires et table-valued :
- Création et usage de fonctions définies par l’utilisateur (UDF).
- Comparaison entre fonctions scalaires et fonctions table-valued.
Exercice Pratique :
Créer une CTE récursive pour calculer la hiérarchie d’employés dans une organisation.
Après-midi : Gestion des Transactions et Erreurs (4h)
- Transactions en T-SQL :
- Comprendre les concepts de début (BEGIN), commit (COMMIT), et rollback (ROLLBACK).
- Isolation et niveaux de transactions (READ UNCOMMITTED, REPEATABLE READ, etc.).
- Verrouillage des ressources et prévention des deadlocks.
- Gestion des erreurs :
- TRY…CATCH pour gérer les erreurs en T-SQL.
- Utilisation de THROW et RAISERROR pour signaler des exceptions.
- Implémentation d’une gestion robuste des erreurs dans les procédures stockées.
Exercice Pratique :
Écrire un script T-SQL simulant une opération bancaire avec transactions et gestion des erreurs.
Jour 2 : Programmation et Optimisation T-SQL
Matinée : Programmation Avancée avec T-SQL (3h)
- Procédures Stockées :
- Création, modification et exécution.
- Passage de paramètres en entrée et en sortie.
- Procédures stockées dynamiques (sp_executesql).
- Déclencheurs (Triggers) :
- Comprendre les déclencheurs AFTER et INSTEAD OF.
- Cas d’utilisation : audit des modifications, règles métiers complexes.
- Gestion des performances des déclencheurs.
Exercice Pratique :
Créer un déclencheur pour enregistrer l’historique des modifications d’une table Produits.
Après-midi : Optimisation des Performances (4h)
- Optimisation des requêtes :
- Concepts de plan d’exécution.
- Analyse des statistiques et des coûts des requêtes.
- Réécriture de requêtes pour améliorer les performances (par exemple, éviter les scans de tables).
- Indexation :
- Création et gestion des index (clustered et non-clustered).
- Optimisation des requêtes avec des index couvrants.
- Comprendre les index filtrés et les colonnes inclues.
- Gestion des vues matérialisées :
- Création et mise à jour de vues indexées.
- Utilisation pour accélérer les requêtes complexes.
Exercice Pratique :
Analyser une requête lente, identifier les problèmes et proposer des optimisations (ajout ou modification d’index).
Jour 3 : Analyse et Reporting Avancé avec T-SQL
Matinée : Fonctions analytiques et OLAP (3h)
- Fonctions analytiques avancées :
- Utilisation des fenêtres (OVER) pour des calculs avancés.
- Fonctions comme ROW_NUMBER, RANK, DENSE_RANK, NTILE.
- Calculs cumulatifs avec SUM, AVG, etc.
- T-SQL et OLAP :
- Exploration des cubes OLAP avec T-SQL.
- Utilisation des requêtes pivot et unpivot pour transformer les données.
Exercice Pratique :
Créer un rapport avec des fonctions de fenêtre pour analyser les ventes d’une entreprise (classement par région, calculs cumulatifs).
Après-midi : Sécurité, Maintenance et Étude de Cas Final (4h)
- Sécurité avancée avec T-SQL :
- Gestion des permissions au niveau des objets.
- Masquage des données (Dynamic Data Masking).
- Sécurisation des données sensibles avec Always Encrypted.
- Maintenance et automatisation :
- Création de jobs SQL Server Agent avec T-SQL.
- Monitoring et alertes avec sp_monitor et sp_who.
- Étude de cas final :
- Concevoir et implémenter un système complet pour gérer une base de données de réservation d’hôtels, incluant :
- Création des tables, procédures et déclencheurs.
- Optimisation des requêtes.
- Génération d’un rapport analytique sur l’occupation des chambres par mois.
Matériel fourni
- Supports de cours et exemples SQL téléchargeables.
- Accès à une base de données de test pour les exercices.
- Scripts d’analyse de performance et de gestion des erreurs.