Descrizione del corso
This course teaches you how to use the advanced features of PL/SQL to design and tune PL/SQL to interface with the database and other applications.
Programma
Introduction
- Course Objectives
- Course Agenda
- Describe the development environments
- Identify the tables, data, and tools used in this course
PL/SQL Programming Concepts: Review
- Identify PL/SQL block structure
- Packages, procedures and functions
- Cursors
- Handle exceptions
- Dependencies
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
Overview of Collections
- Overview of collections
- Use Associative arrays
- Navigate using associative methods
- Use Nested tables
- Use Varrays
- Compare nested tables and varrays
Using Collections
- Write PL/SQL programs that use collections
- Use Collections effectively
- Enhancements to PL/SQL Type Binds
Manipulating Large Objects
- Working with LOBs
- Overview of SecureFile LOBs
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
Performance and Tuning
- Understand and influence the compiler
- Tune PL/SQL code
- Enable intra unit inlining
- Identify and tune memory issues
- Recognize network issues
Improving Performance with Caching
- Describe result caching
- Use SQL query result cache
- 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
Profiling and Tracing PL/SQL Code
- Tracing PL/SQL Execution
- Tracing PL/SQL: Steps
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
Safeguarding Your Code Against SQL Injection Attacks
- SQL Injection Overview
- Reducing the Attack Surface
- Filtering Input with DBMS_ASSERT