Duration: 3 Days
What you will learn
In the Oracle Database 12c R2: Advanced PL/SQL course, students learn how to use the advanced features of PL/SQL
in order to design and tune PL/SQL to interface with the database and integrate with the other applications in the most
efficient manner. They learn to write powerful PL/SQL programs using external C/Java routines, fine-grained access
packages, cursors, extended interfaces and collections.
Learn To:
Apply PL/SQL designing best practices.
Create PL/SQL applications that use collections.
Work with JSON data in the database.
Implement a virtual private database with fine-grained access control.
Write code to interface with external C and Java applications.
Write code to interface with large objects and use SecureFile LOBs.
Write and tune PL/SQL code effectively to maximize performance.
Benefits To You
Students will benefit from using advanced features of program design, packages, cursors, extended interface methods,
and collections and students learn how to write powerful PL/SQL programs.
Programming efficiency, use of external C and Java routines, PL/SQL server pages, and fine-grained access are
covered. Students learn how to write PL/SQL routines that analyze the PL/SQL applications and caching techniques that
can improve performance.
Students are introduced to the Virtual Private Database (VPD) to implement security policies and they learn techniques
and tools to strengthen their applications against SQL injection attacks.
A Live Virtual Class (LVC) is exclusively for registered students; unregistered individuals may not view an LVC at any
time. Registered students must view the class from the country listed in the registration form. Unauthorized recording,
copying, or transmission of LVC content may not be made.
Audience
Application Developers
Database Administrators
Support Engineer
Technical Consultant
Related Training
Required Prerequisites
Basic Knowledge of SQL, PL/SQL
Familiarity with programming languages
Knowledge of PL/SQL Program Units
Oracle Database: Develop PL/SQL Program Units Ed 2
Oracle Database: SQL Workshop I Ed 2
Course Objectives
Design PL/SQL packages and program units that execute efficiently
Write code to interface with external applications and the operating system
Create PL/SQL applications that use collections
Learn to work with JSON data in relational database
Write and tune PL/SQL code effectively to maximize performance
Implement a virtual private database with fine-grained access control
Write code to interface with large objects and use SecureFile LOBs
Course Topics
Introduction
Course Objectives
Course Agenda
Describe the full Human Resources (HR) Schema
Identify the Appendices Used in this Course
Review the online Oracle Database 12c SQL and PL/SQL documentation and the additional available resources
List the PL/SQL development environments Available in this course
Start SQL Developer and Create a Database Connection
Use the SQL Worksheet
Oracle Database Exadata Express Cloud Service
Overview of Oracle Database Exadata Express Cloud Service
Accessing Cloud Database using SQL Workshop
Connecting to Exadata Express Database using Database Clients
Using SQL Developer to work with Exadata Express Database
Overview of Collections
Overview of Collections
Use Associative arrays
Use Nested tables
Use Varrays
Using Collections in PL/SQL
Write PL/SQL programs that use collections
Use Collections effectively
Enhancements to PL/SQL Type Binds
Binding PL/SQL only datatypes to SQL statements using DBMS_SQL
Manipulating Large Objects
Working with LOBs
Overview of SecureFile LOBs
Working with JSON Data
JSON Data
JSON data columns in tables
Generation of JSON data with SQL/JSON generation function
Querying JSON columns
PL/SQL object types for JSON
Using Advanced Interface Methods
Calling External Procedures from PL/SQL
Benefits of External Procedures
Understand how an external routine is called from PL/SQL
C advanced interface methods
Java advanced interface methods
Access PL/SQL blocks from from Java classes using JDBC
Performance and Tuning
Understand and influence the compiler
Tune PL/SQL code
Enable intra unit inlining
Identify and tune memory issues
Recognize network issues
Designing Applications for Real World Performance
Improving Performance with Caching
Describe result caching
Use PL/SQL function cache
Review PL/SQL function cache considerations
Analyzing PL/SQL Code
Finding Coding Information
PL/Scope Concepts
DBMS_METADATA Package
PL/SQL Enhancements
PL/SQL Pragma to mark an item deprecated
Profiling and Tracing PL/SQL Code
What is Tracing and Profiling
Tracing PL/SQL Execution
Tracing PL/SQL: Steps
Securing application through PL/SQL
Controlling Access to Program Units
Managing Access to data using PL/SQL
Creating Secure Application roles to control access to applications
Safeguarding Your Code Against SQL Injection Attacks
SQL Injection Overview
Reducing the Attack Surface
Filtering Input with DBMS_ASSERT
Security Features implemented through PL/SQL
Brief introduction to Security implementation
Fine Grained Access Control
Application Context
List the DBMS_RLS procedures
Implement a policy
Query the dictionary views holding information on fine-grained access
0.00 average based on 0 ratings