1. Introduction
- Course Objectives
- Course Agenda
- Describe the development environments
- Identify the tables, data, and tools used in this course
2. PL/SQL Programming Concepts: Review
- Identify PL/SQL block structure
- Packages, procedures and functions
- Cursors
- Handle exceptions
- Dependencies
3. Designing PL/SQL Code
- Describe the predefined data types
- Create subtypes based on existing types for an application
- List the different guidelines for cursor design
- Describe cursor variables
- White List
4. Overview of Collections
- Overview of collections
- Use Associative arrays
- Navigate using associative methods
- Use Nested tables
- Use Varrays
- Compare nested tables and varrays
5. Using Collections
- Write PL/SQL programs that use collections
- Use Collections effectively
- Enhancements to PL/SQL Type Binds
6. Manipulating Large Objects
- Working with LOBs
- Overview of SecureFile LOBs
7. 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
8. Performance and Tuning
- Understand and influence the compiler
- Tune PL/SQL code
- Enable intra unit inlining
- Identify and tune memory issues
- Recognize network issues
9. Improving Performance with Caching
- Describe result caching
- Use SQL query result cache
- Use PL/SQL function cache
- Review PL/SQL function cache considerations
10. Analyzing PL/SQL Code
- Finding Coding Information
- PL/Scope Concepts
- DBMS_METADATA Package
- PL/SQL Enhancements
11. Profiling and Tracing PL/SQL Code
- Tracing PL/SQL Execution
- Tracing PL/SQL: Steps
12. Implementing VPD with Fine-Grained Access Control
- Understand how fine-grained access control works overall
- Describe the features of fine-grained access control
- Describe an application context
- Create an application context
- Set an application context
- List the DBMS_RLS procedures
- Implement a policy
- Query the dictionary views holding information on fine-grained access
13. Safeguarding Your Code Against SQL Injection Attacks
- SQL Injection Overview
- Reducing the Attack Surface
- Filtering Input with DBMS_ASSERT
14. Oracle Cloud Overview
- Introduction to Oracle Cloud & Oracle Cloud Services
- Cloud Deployment Models
- Evolving from On-premises to Exadata Express
- What is in Exadata Express?
- Exadata Express for Users & Developers
- Oracle Exadata Express Cloud Service
- Getting Started with Exadata Express
- Service Console & Web Access through Service Console