Formation PL/SQL
Présentation
Maîtrisez PL/SQL dans sa globalité grâce à cette formation complète, structurée et résolument orientée pratique. De la syntaxe de base jusqu’à la programmation avancée, vous apprendrez à écrire, organiser et optimiser vos blocs PL/SQL pour automatiser la logique métier dans Oracle Database et construire des applications robustes, performantes et sécurisées.
Vous débuterez par les fondamentaux : structure des blocs, variables, instructions conditionnelles et boucles. L’objectif : maîtriser la syntaxe, comprendre le cycle d’exécution d’un bloc PL/SQL et interagir efficacement avec les données de la base.
Vous enchaînerez avec les curseurs, les procédures, les fonctions et les packages : des briques essentielles pour encapsuler votre logique métier, structurer votre code et améliorer sa réutilisabilité et sa maintenabilité dans un contexte professionnel.
Un focus est consacré à la gestion des erreurs, aux triggers, à la manipulation avancée de données avec les collections, et aux optimisations avec BULK COLLECT, FORALL et SQL dynamique. Vous apprendrez aussi à profiler, tracer et sécuriser vos scripts.
Comme pour toutes nos formations, celle-ci vous sera présentée avec les toutes dernières actualisations de PL/SQL.
Objectifs
- Comprendre l’architecture et le rôle de PL/SQL dans Oracle, sa complémentarité avec SQL, et les cas d’usage typiques en développement et en administration de bases de données
- Savoir concevoir, structurer et maintenir des blocs PL/SQL robustes, incluant variables, contrôles de flux, curseurs, exceptions, procédures, fonctions et packages
- Maîtriser la gestion des erreurs, les déclencheurs, les collections, le SQL dynamique, et les techniques d’optimisation avec BULK COLLECT et FORALL
- Être capable d’intégrer et d’exécuter des traitements complexes côté base, tout en garantissant performance, lisibilité, modularité et traçabilité du code PL/SQL
- Appliquer les bonnes pratiques de structuration, de documentation, de sécurité et de tests dans une logique projet, afin de devenir opérationnel en environnement Oracle réel
Public visé
- Développeurs SQL
- Data Base Administrator
Pré-requis
- Maîtriser les bases du langage SQL
Programme de la formation PL/SQL
Introduction à PL/SQL
- Différences entre SQL et PL/SQL
- Avantages de PL/SQL dans Oracle
- Structure d’un bloc PL/SQL
- SQL*Plus, SQL Developer, TOAD
- Compilation et exécution de blocs
- Mode anonyme vs stocké
Syntaxe et structures de base
- DECLARE, BEGIN, EXCEPTION, END
- Règles de syntaxe et bonnes pratiques
- Déclaration de variables (VARCHAR2, NUMBER, DATE, etc.)
- Constantes
- Opérations sur les variables
- IF…THEN, ELSIF, ELSE
- CASE simple et CASE recherché
- Boucles : LOOP, WHILE, FOR
Les curseurs
- Utilisation avec les commandes DML
- Attributs : %FOUND, %NOTFOUND, %ROWCOUNT
- Déclaration et ouverture
- Récupération de lignes (FETCH)
- Fermeture du curseur
- Définition de curseurs dynamiques
- Passage d’arguments
- Verrouillage de lignes via curseurs
Procédures et fonctions
- Syntaxe de base
- Paramètres : IN, OUT, IN OUT
- Appel de procédures
- Différence avec les procédures
- Retour d’une valeur
- Utilisation dans des requêtes SQL
- Documentation interne (COMMENT)
- Modularisation du code PL/SQL
Packages
- Spécification vs corps
- Encapsulation de la logique métier
- Compilation et dépendances
- Visibilité des objets (public/private)
- Réutilisabilité
- Amélioration des performances
- Gestion des versions
Gestion des exceptions
- Prédéfinies (NO_DATA_FOUND, TOO_MANY_ROWS, etc.)
- Définies par l’utilisateur
- Bloc EXCEPTION
- Utilisation de RAISE, RAISE_APPLICATION_ERROR
- Création d’un package de gestion des erreurs
- Tracing/logging des erreurs
Triggers
- BEFORE / AFTER
- ROW / STATEMENT
- INSERT / UPDATE / DELETE
- Syntaxe et options
- OLD et NEW : valeurs d’état
- Éviter les effets de bord
- Triggers mutuels et solutions
Programmation avancée
- TABLE, VARRAY, NESTED TABLE
- RECORDs et tableaux de RECORDs
- Utilisation avec REF CURSOR
- SQL dynamique avec EXECUTE IMMEDIATE
- COMMIT, ROLLBACK, SAVEPOINT
- Contrôle de transaction dans le code PL/SQL
Optimisation et bonnes pratiques
- Eviter les allers-retours SQL ↔ PL/SQL
- Bulk processing : BULK COLLECT, FORALL
- DBMS_PROFILER
- DBMS_UTILITY et DBMS_OUTPUT
- Masquage des erreurs
- Droits d’exécution (AUTHID CURRENT_USER)
Utilitaires Oracle utiles
- Affichage pour le debug
- SQL dynamique sécurisé
- Lancement de jobs programmés
- Gestion des tâches en arrière-plan
- UTL_FILE : manipulation de fichiers
- UTL_MAIL : envoi d’e-mails
- UTL_HTTP : requêtes HTTP externes
Pour aller plus loin
Formation Mage
Formation Oracle 23
Formation SQL
Langues et Lieux disponibles
Langues
- Français
- Anglais / English
Lieux
-
France entière
- Paris
- Lille
- Reims
- Lyon
- Toulouse
- Bordeaux
- Montpellier
- Nice
- Sophia Antipolis
- Marseille
- Aix-en-Provence
- Nantes
- Rennes
- Strasbourg
- Grenoble
- Dijon
- Tours
- Saint-Étienne
- Toulon
- Angers
-
Belgique
- Bruxelles
- Liège
-
Suisse
- Genève
- Zurich
- Lausanne
-
Luxembourg
Témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Afficher tous les témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !