0345 4506120

Oracle 12c PL/SQL Programming

This Oracle 12c plsql programming training course uses Oracles 12c database enhancing the PL/SQL function result cache, improving PL/SQL execution in SQL, adds a whitelist, and fine-tunes privileges.


Learning Objectives

Oracle Database 12c offers a variety of enhancements to the way you can define and execute PL/SQL program units. 

This Oracle 12c PL/SQL Programming training course introduces the fundamentals of Oracle's procedural language, PL/SQL, the engine behind the full range of Oracle technology. The course introduces the syntactic transactional languages controls evolving to cover the full range of PL/SQL program


PC Fundamentals

Oracle SQL

Course Content

Oracle 12c PL/SQL Programming Course Contents


PL/SQL Basics


PL/SQL Block Structure


Variable Types


Creating Variables and Constants

%Type Identifiers


Basic Data Processing

Select Into Command

Procedural Processing

Simple or Infinite Loops

While Loops

For Loops

IF Statements



Data Processing

Data Processing

Creating Explicit Cursors

Working with Cursors

Using Cursors with Loops

Parameterised Cursors

Cursor Attributes

Implicit Cursors

Cursor for Loops

Oracle Supplied Packages






File IO with UTL_FILE package

File IO with UTL_FILE package


Dynamic SQL

Performing Dynamic SQL with DBMS_SQL Package

Native Dynamic SQL


Large Object Support

Large Object Principles


Error Handling

Introduction to Exceptions

Creating Programmer Defined Exceptions


Redefining Oracle Exceptions

Raising Application Errors

Using Error Variables



PL/SQL block structure





Stored PL/SQL code

User Schemas



Invoker Rights

Overloaded Modules

Local Modules

Shared Global Area

Code Wrapping



Creating Packages

Dropping Packages

Parameter passing by reference

Serially reusable packages


Web PL/SQL Development

Output with htp.p

Specific htp procedures


PL/SQL Toolkit Packages







10g PLSQL Language Improvement

Improvements discussion

Regular Expressions

Additional floating point types

Nested table enhancements

Utility packages for compression/mail/warnings


Transactional Control




Autonomous Transaction


Extending the Type System

PL/SQL Collections

Associated Arrays

Nested Tables

Bulk Binds

Bulk Exceptions

Caching Data


Database Triggers

Writing Database Triggers

Database Trigger Syntax

Accessing Column Values in Triggers

Trigger Restrictions

Database Trigger Firing Sequen

Disabling Triggers

Enabling Triggers

Dropping Triggers

Database Triggers (from 9i)


Data Dictionary Views

Naming Conventions

Package security


Oracle 12c New Features

Invoker rights and the PL/SQL function result cache

WITH clause improvements

Define PL/SQL subprograms in a SQL statement

Reference a packaged constant

Whitelists and the accessible by clause

Grant roles to program units

PL/SQL enhancements for executing SQL

Miscellaneous SQL*Plus enhancements

Implicit Results on SQL*Plus

Privacy Notice

In order to provide you with the service requested we will need to retain and use your contact information in accordance with our Privacy Notice. If you choose to provide us with this information you explicitly consent to us using the information as necessary to provide the requested service to you. If you do not agree please do not proceed to request the service from us.

Marketing Permissions

Would you like to receive our newsletter and other information on products and services which we think will be of interest to you by email. We will always treat your information with care and in accordance with our Privacy Notice. You are free to withdraw this permission at any time.


Virtual Classroom

Virtual classrooms provide all the benefits of attending a classroom course without the need to arrange travel and accomodation. Please note that virtual courses are attended in real-time, commencing on a specified date.

Virtual Course Dates

Our Customers Include