Plan du cours
Introduction
- Objectifs et buts
- Programme du cours
- Présentations
- Prérequis
- Responsabilités
Outils SQL
- Objectifs
- SQL Developer
- SQL Developer - Connexion
- Affichage des informations de table
- Utilisation de SQL, SQL Developer - Requête
- Connexion SQL*Plus
- Connexion directe
- Utilisation de SQL*Plus
- Terminer la session
- Commandes SQL*Plus
- Environnement SQL*Plus
- Invite SQL*Plus
- Recherche d'informations sur les tables
- Obtenir de l'aide
- Utilisation des fichiers SQL
- iSQL*Plus, Modèles d'entités
- Tables ORDERS
- Tables FILM
- Fiche des tables du cours
- Syntaxe des instructions SQL
- Commandes SQL*Plus
Qu'est-ce que PL/SQL ?
- Qu'est-ce que PL/SQL ?
- Pourquoi utiliser PL/SQL ?
- Structure de bloc
- Affichage d'un message
- Exemple de code
- Définition de SERVEROUTPUT
- Exemple de mise à jour, Guide de style
Variables
- Variables
- Types de données
- Définition des variables
- Constantes
- Variables locales et globales
- Variables %Type
- Variables de substitution
- Commentaires avec &
- Option Verify
- Variables &&
- Define et Undefine
Instruction SELECT
- Instruction SELECT
- Affectation de variables
- Variables %Rowtype
- Fonction CHR
- Autodidacte
- Enregistrements PL/SQL
- Exemples de déclarations
Instruction conditionnelle
- Instruction IF
- Instruction SELECT
- Autodidacte
- Instruction Case
Gestion des erreurs
- Exception
- Erreurs internes
- Code et message d'erreur
- Utilisation de No Data Found
- Exceptions utilisateur
- Raise Application Error
- Capturer les erreurs non définies
- Utilisation de PRAGMA EXCEPTION_INIT
- Commit et Rollback
- Autodidacte
- Blocs imbriqués
- Atelier
Itération - Boucles
- Instruction Loop
- Instruction While
- Instruction For
- Instruction Goto et Étiquettes
Curseurs
- Curseurs
- Attributs de curseur
- Curseurs explicites
- Exemple de curseur explicite
- Déclaration du curseur
- Déclaration de la variable
- Ouverture, Récupération de la première ligne
- Récupération de la ligne suivante
- Exit When %Notfound
- Clôture
- Boucle For I
- Boucle For II
- Exemple de mise à jour
- FOR UPDATE
- FOR UPDATE OF
- WHERE CURRENT OF
- Commit avec les curseurs
- Exemple de validation I
- Exemple de validation II
- Paramètres de curseur,
- Atelier
- Solution de l'atelier
Procédures, fonctions et paquets
- Instruction Create
- Paramètres
- Corps de la procédure
- Affichage des erreurs
- Description d'une procédure
- Appel de procédures
- Appel de procédures dans SQL*Plus
- Utilisation de paramètres de sortie
- Appel avec paramètres de sortie
- Création de fonctions
- Fonction d'exemple
- Affichage des erreurs
- Description d'une fonction
- Appel de fonctions
- Appel de fonctions dans SQL*Plus
- Programmation modulaire
- Procédure d'exemple
- Appel de fonctions
- Appel de fonctions dans une instruction IF
- Création de paquets
- Exemple de paquet
- Raisons d'utiliser des paquets
- Sous-programmes publics et privés
- Affichage des erreurs
- Description d'un paquet
- Appel de paquets dans SQL*Plus
- Appel de paquets depuis des sous-programmes
- Suppression d'un sous-programme
- Recherche de sous-programmes
- Création d'un paquet de débogage
- Appel du paquet de débogage
- Notation positionnelle et nommée
- Valeurs par défaut des paramètres
- Recompilation des procédures et des fonctions
- Atelier
Déclencheurs
- Création de déclencheurs
- Déclencheurs de niveau instruction
- Déclencheurs de niveau ligne
- Restriction WHEN
- Déclencheurs sélectifs - IF
- Affichage des erreurs
- Commit dans les déclencheurs
- Restrictions
- Déclencheurs mutants
- Recherche de déclencheurs
- Suppression d'un déclencheur
- Génération d'un numéro automatique
- Désactivation des déclencheurs
- Activation des déclencheurs
- Noms des déclencheurs
Données d'exemple
- Tables ORDER
- Tables FILM
- Tables EMPLOYEE
SQL dynamique
- SQL dans PL/SQL
- Attachement (Binding)
- SQL dynamique
- SQL dynamique natif
- DDL et DML
- Paquet DBMS_SQL
- SQL dynamique - SELECT
- SQL dynamique - Procédure SELECT
Utilisation de fichiers
- Utilisation de fichiers texte
- Paquet UTL_FILE
- Exemple d'écriture/ajout
- Exemple de lecture
- Exemple de déclencheur
- Paquets DBMS_ALERT
- Paquet DBMS_JOB
COLLECTIONS
- Variables %Type
- Variables d'enregistrement
- Types de collections
- Tables indexées
- Affectation de valeurs
- Éléments inexistants
- Tables imbriquées
- Initialisation de table imbriquée
- Utilisation du constructeur
- Ajout à une table imbriquée
- Varrays
- Initialisation de Varray
- Ajout d'éléments à un Varray
- Collections multi-niveaux
- Bulk Bind
- Exemple de Bulk Bind
- Problèmes transactionnels
- Absence Clause BULK COLLECT
- RETURNING INTO
Curseurs de référence
- Variables de curseur
- Définition des types REF CURSOR
- Déclaration de variables de curseur
- Contraintes et non contraintes
- Utilisation de variables de curseur
- Exemples de variables de curseur
Pré requis
Ce cours est réservé aux personnes ayant déjà quelques connaissances en SQL.
Une expérience préalable avec un système informatique interactif est souhaitable, mais non obligatoire.
Nos clients témoignent (7)
J'ai apprécié l'expérience pratique et la possibilité de travailler sur des activités de codage réelles
Kristine - Isuzu Philippines Corporation
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique
Reliez chaque sujet à un cas d'application dans le monde réel.
Ferdinand - National Grid Corporation of the Philippines
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique
les pratiques et les notes de l'animateur
Hamda AlMahri - Dubai Courts
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique
M. Khobeib était un excellent conférencier et formateur. En tant que débutant en PL/SQL, Khobeib a expliqué les bases avec beaucoup de patience tout au long de la formation. Il a répondu à toutes nos questions de manière exhaustive et a montré de nombreux exemples quand nous le lui demandions. J'ai vraiment appris beaucoup et je peux désormais commencer à effectuer des tâches en PL/SQL.
Abdulrahman Alsalami - Dubai Courts
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique
le formateur a été très utile tout le temps
Maitha Alselais - Dubai Courts
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique
L'animateur était fantastique sous tous les aspects. Il était très interactif et captivant. Plus important encore, les sujets étaient enseignés de manière très claire et à un rythme parfait pour terminer le cours. Je tiens vraiment à le remercier chaleureusement.
Vivek Thomas - Estee Lauder BV
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique
C'était assez pratique, pas trop de théorie.
David Lambaerts - Estee Lauder BV
Formation - ORACLE PL/SQL Fundamentals
Traduction automatique