Vous êtes sur la page 1sur 4

Oracle University | Appelez-nous: +33 (0) 1 57 60 20 81

Oracle Database : Objets procduraux bass d'Oracle

Dure: 3 Jours

Description
Ce cours est destin aux dveloppeurs ayant une connaissance lmentaire des langages PL/SQL et SQL. Il traite en
dtail du dveloppement, de l'excution et de la gestion de programmes stocks PL/SQL. Les stagiaires peuvent se
perfectionner en acqurant des connaissances approfondies sur les programmes stocks PL/SQL, qu'il s'agisse de
procdures, de fonctions, de packages ou de dclencheurs de base de donnes. Ils apprennent galement utiliser
quelques-uns des packages fournis par Oracle.

Ce cours aborde aussi l'utilisation de code SQL dynamique et l'application des considrations conceptuelles lors du
codage en PL/SQL. En tudiant la manire d'influencer l'optimiseur PL/SQL et de grer les dpendances, il permet de
mieux comprendre ce langage.

Les stagiaires utiliseront principalement Oracle SQL Developer, mais SQL*Plus est fourni en tant qu'outil facultatif.

Ce cours convient aux utilisateurs d'Oracle Database 10g et 11g. Les diffrences entre les deux versions sont mineures
en ce qui concerne SQL.
Learn To:
Crer des sous-programmes de package surchargs pour plus de flexibilit
Excuter des instructions SQL de faon dynamique
Utiliser les packages fournis par Oracle pour le dveloppement d'applications
Crer des procdures et des fonctions stockes
Crer des dclencheurs pour rsoudre des problmes mtier

Audience
Administrateurs de base de donnes
Analystes systme
Application Developers
Database Administrators
Dveloppeurs Forms
Dveloppeurs PL/SQL
Dveloppeurs d'applications
Forms Developer
Ingnieurs support
PL/SQL Developer
Support Engineer
System Analysts

Cours pr-requis

Cours pr-requis obligatoire(s)

Oracle Database : Prsentation du langage SQL (fusion des cours

Copyright 2012, Oracle. Tous droits rservs. Page 1


Connaissance lmentaire du langage PL/SQL
Oracle Database : Les fondamentaux du langage SQL (I) NOUVEAU
Oracle Database : Les fondamentaux du langage SQL (II)
Oracle Database : Les fondamentaux du langage PL/SQL

Cours pr-requis conseill(s)


Premire exprience en programmation

Objectifs
Crer des sous-programmes de package surchargs pour plus de flexibilit
Crer des procdures et des fonctions stockes
Crer des dclencheurs pour rsoudre des problmes mtier
Concevoir du code PL/SQL pour des types de donnes prdfinis, des sous-programmes locaux, des programmes supplmenta
Crer des packages PL/SQL pour regrouper et contenir des structures lies
Grer les dpendances entre sous-programmes PL/SQL
Utiliser des packages PL/SQL pour regrouper et contenir des structures lies
Utiliser la compilation conditionnelle pour personnaliser les fonctionnalits d'une application PL/SQL sans supprimer de code so
Utiliser les packages PL/SQL fournis par Oracle pour gnrer une sortie sur cran, une sortie sous forme de fichier ou de messa
Utiliser l'infrastructure d'avertissement du compilateur
Ecrire du code SQL dynamique pour plus de flexibilit

Thmes abords

Introduction
Objectifs et contenu du cours
Dcrire le schma Human Resources (HR)
Identifier les annexes utilises dans le cours
Identifier les environnements de dveloppement PL/SQL disponibles dans le cours
Utiliser SQL Developer
Consulter la documentation Oracle 11g en ligne sur SQL et PL/SQL ainsi que les ressources supplmentaires disponibles

Crer des procdures stockes


Crer une conception modulaire et par couches de sous-programmes
Modulariser le dveloppement l'aide de blocs PL/SQL
Dcrire l'environnement d'excution du code PL/SQL
Identifier les avantages lis l'utilisation de sous-programmes PL/SQL
Enoncer les diffrences entre blocs anonymes et sous-programmes
Crer, appeler et supprimer des procdures stockes l'aide de la commande CREATE et de SQL Developer
Implmenter les paramtres de procdure et les modes de paramtres
Visualiser les informations des procdures l'aide des vues du dictionnaire de donnes et de SQL Developer

Crer des fonctions stockes


Crer, appeler et supprimer des fonctions stockes l'aide de la commande CREATE et de SQL Developer
Identifier les avantages des fonctions stockes dans les instructions SQL
Enoncer les tapes de cration d'une fonction stocke
Implmenter des fonctions dfinies par l'utilisateur dans les instructions SQL
Identifier les restrictions lies aux appels de fonctions partir d'instructions SQL
Contrler les effets de bord lors de l'appel de fonctions partir d'expressions SQL
Afficher les informations relatives aux fonctions

Crer des packages

Copyright 2012, Oracle. Tous droits rservs. Page 2


Identifier les avantages des packages
Dcrire les packages
Identifier les composants d'un package
Dvelopper un package
Visibilit des composants d'un package
Crer la spcification et le corps d'un package l'aide de l'instruction SQL CREATE et de SQL Developer
Appeler des structures de package
Afficher le code source PL/SQL l'aide du dictionnaire de donnes

Packages
Surcharger des sous-programmes dans PL/SQL
Utiliser le package STANDARD
Utiliser les pr-dclarations pour rsoudre les rfrences de procdure illicites
Utiliser des fonctions de package en langage SQL - Restrictions
Etat persistant des packages
Etat persistant d'un curseur de package
Contrler les effets de bord des sous-programmes PL/SQL
Appeler des tables PL/SQL d'enregistrements dans des packages

Implmenter les packages fournis par Oracle pour le dveloppement d'applications


Prsentation des packages fournis par Oracle
Exemples de packages fournis par Oracle
Fonctionnement du package DBMS_OUTPUT
Utiliser le package UTL_FILE pour interagir avec les fichiers du systme d'exploitation
Appeler le package UTL_MAIL
Ecrire des sous-programmes UTL_MAIL

Code SQL dynamique


Flux d'excution du code SQL
Prsentation du code SQL dynamique
Dclarer des variables de curseur
Excuter dynamiquement un bloc PL/SQL
Configurer du code SQL dynamique natif pour compiler le code PL/SQL
Appeler le package DBMS_SQL
Implmenter le package DBMS_SQL avec une instruction LMD paramtre
Exhaustivit fonctionnelle du code SQL dynamique

Considrations relatives la conception du code PL/SQL


Normaliser les constantes et les exceptions
Prsentation des sous-programmes locaux
Ecrire des transactions autonomes
Implmenter le hint de compilation NOCOPY
Appeler le hint PARALLEL_ENABLE
Cache des rsultats de fonction PL/SQL intersession
Utiliser la clause DETERMINISTIC avec des fonctions
Utiliser la liaison en masse pour amliorer les performances

Dclencheurs
Description des dclencheurs
Identifier les types d'vnement et le corps des dclencheurs
Scnarios d'application mtier pour l'implmentation de dclencheurs
Crer des dclencheurs LMD l'aide de l'instruction CREATE TRIGGER et de SQL Developer

Copyright 2012, Oracle. Tous droits rservs. Page 3


Identifier les types d'vnement, le corps et le point d'excution d'un dclencheur
Dclencheurs au niveau instruction et dclencheurs au niveau ligne
Crer un dclencheur INSTEAD OF et un dclencheur dsactiv
Contrler, tester et supprimer des dclencheurs

Crer des dclencheurs combins, LDD et d'vnement de base de donnes


Prsentation des dclencheurs combins
Identifier les sections de point de dclenchement d'un dclencheur combin de table
Structure de dclencheur combin pour les tables et les vues
Implmenter un dclencheur combin pour rsoudre l'erreur de table en mutation
Comparaison entre dclencheurs de base de donnes et procdures stockes
Crer des dclencheurs sur les instructions LDD
Crer des dclencheurs sur des vnements de base de donnes et sur des vnements systme
Privilges systme requis pour grer les dclencheurs

Compilateur PL/SQL
Prsentation du compilateur PL/SQL
Dcrire les paramtres d'initialisation lis la compilation PL/SQL
Identifier les nouveaux avertissements de la phase de compilation PL/SQL
Prsentation des avertissements de compilation PL/SQL pour les sous-programmes
Enoncer les avantages des avertissements du compilateur
Enoncer les catgories de messages d'avertissement de compilation PL/SQL
Dfinir les niveaux des messages d'avertissements l'aide de SQL Developer, du paramtre d'initialisation PLSQL_WARNINGS
Afficher les avertissements du compilateur l'aide de SQL Developer, de SQL*Plus ou des vues du dictionnaire de donnes

Grer le code PL/SQL


Prsentation de la compilation conditionnelle
Implmenter des directives de slection
Appeler des directives d'interrogation prdfinies et dfinies par l'utilisateur
Paramtre PLSQL_CCFLAGS et directive d'interrogation
Directives d'erreur de la compilation conditionnelle permettant de gnrer des erreurs dfinies par l'utilisateur
Package DBMS_DB_VERSION
Ecrire des procdures DBMS_PREPROCESSOR pour afficher ou extraire le texte source
Brouillage dynamique (obfuscation) et encapsulation de code PL/SQL

Grer les dpendances


Prsentation des dpendances d'objet de schma
Interroger les dpendances d'objet directes l'aide de la vue USER_DEPENDENCIES
Interroger le statut d'un objet
Invalidation d'objets dpendants
Afficher les dpendances directes et indirectes
Gestion dtaille des dpendances dans Oracle Database 11g
Comprendre les dpendances distantes
Recompiler un programme PL/SQL

Cours associ(s)

Oracle Database 11g: Develop PL/SQL Program Units Self-Study Course

Copyright 2012, Oracle. Tous droits rservs. Page 4