25,000+ Courses Nationwide
0345 4506120

Oracle 12c PL/SQL Programming

Increase the productivity, performance, scalability, portability, and security of your Oracle database with this comprehensive PL/SQL programming course. With this training, you learn to write PL/SQL programs, build stored procedures, design and execute modular applications, and increase the efficiency of data movement — essential skills for any Oracle developer.

Software

  • This course is currently running on Oracle 12c

Select specific date to see price, venue and full details.

Learning Objectives

You Will Learn How To

  • Develop efficient PL/SQL programs to access Oracle databases
  • Create stored procedures and functions for reuse and maintenance
  • Design modular applications using packages
  • Manage data retrieval for front-end applications
  • Invoke native dynamic SQL to develop high-level abstract code

Pre-Requisites

Knowledge at the level of:

  • Oracle Database 12c Introduction course, or
  • SQL Programming Language Introduction course

Course Content

Introduction and Overview

PL/SQL fundamentals

  • Declaring and anchoring variables to database definitions
  • Flow control constructs

Oracle® 11g and 12c PL/SQL features

  • PL/Scope in Oracle 11g
  • Returning implicit cursor results from stored procedures in Oracle 12c
  • Declaring local functions within SELECT statements in Oracle 12c
Data Manipulation Techniques

Maintaining data with DML statements

  • Employing the RETURNING INTO clause
  • Solving the fetch-across-commit problem

Managing data retrieval with cursors

  • Implications of explicit and implicit cursors
  • Simplifying cursor processing with cursor FOR LOOPs
  • Embedding cursor expressions in SELECT statements

Cursor variables

  • Strong vs. weak cursor variables
  • Passing cursor variables to other programs
  • Defining REF CURSORS in packages
Developing Well-Structured and Error-Free Code

Error handling using EXCEPTIONs

  • Propagation and scope
  • "Retrying" problem transactions with EXCEPTION processing

Debugging PL/SQL blocks

  • Simplifying testing and debugging with conditional compilation
  • Interpreting compiler messages
  • Applying structured testing techniques
  • Building and applying a test bed
  • Leveraging the debugging facilities in SQL Developer
Achieving Maximum Reusability

Writing stored procedures and functions

  • Calling and invoking server-side logic
  • Passing input and output parameters
  • Implementing an autonomous transaction

Coding user-written functions

  • Calling PL/SQL functions from SQL
  • Building table-valued functions

Developing safe triggers

  • Employing :OLD and :NEW variables
  • Avoiding unreliable trigger constructs
  • Exploiting schema and database triggers
Exploiting Complex Datatypes

Collection types

  • PL/SQL tables, nested tables, VARRAYs
  • Stepping through dense and nonconsecutive collections

Bulk binding for high performance

  • Moving data into and out of PL/SQL blocks
  • BULK COLLECT INTO and FORALL
  • BULK cursor attributes
  • BULK EXCEPTION handling
Invoking Native Dynamic SQL

Finessing the compiler

  • The EXECUTE IMMEDIATE statement
  • The RETURNING INTO clause

Types of dynamic SQL

  • Building SQL statements during runtime
  • Autogenerating standard code
Package Tips and Techniques
  • Package structure: SPEC and BODY
  • Eliminating dependency problems
  • Overloading for polymorphic effects
  • Evaluating application frameworks
  • Declaring and using persistent global variables

Related Courses

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.

 

We work with the best