Course description
The Oracle Program with PL/SQL training course introduces the delegate to Oracle's PL/SQL programming language and provides practical experience in writing stand-alone programs, developing database triggers and implementing stored functions, procedures and packages. It also introduces some of the Oracle-supplied packages.
Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.
Versions supported 12cR2, 18c and 19c.
Who will the Course Benefit?Oracle database administrators, software development personnel and database support staff who need to write PL/SQL scripts and implement or maintain database triggers, program units and packages.
Course ObjectivesTo provide the skills needed to develop, write and maintain PL/SQL scripts, triggers, stored program units and packages.
Upcoming start dates
Suitability - Who should attend?
A working knowledge of Oracle SQL or SQL Developer is required along with practical experience in writing SQL statements. This can be obtained by attendance on the pre-requisite courses. Some previous programming experience will also prove advantageous.
Experience to the level as demonstrated in this course is recommended:
- Oracle SQL
Training Course Content
Oracle Program with PL/SQL Training Course
Course Contents - DAY 1
Course Introduction- Administration and Course Materials
- Course Structure and Agenda
- Delegate and Trainer Introductions
- What is PL/SQL?
- Basic Elements
- Variables and Constants
- Data Types
- Initializing Variables and Assigning Values
- Using SQL Statements in Code
- Generating Output to SQL or SQL Developer
- IF THEN ELSE Statements
- CASE Expressions
- The Basic Loop Construct
- WHILE and FOR Loops
- Nested and Labelled Loops
- The GOTO Statement
- The CONTINUE Statement
- What is a Cursor?
- Implicit and Explicit Cursors
- Cursor Operations
- Declaring, Opening and Closing Cursors
- Fetching Rows
- Status Checking
- Using Cursors FOR UPDATE
- The Cursor FOR Loop
- Parameterised Cursors
Course Contents - DAY 2
Session 4: EXCEPTIONS AND NESTED BLOCKS- The EXCEPTION Section
- Types of Exception
- Handling Named System-Raised Exceptions
- Handling Unnamed System-Raised Exceptions
- User-Declared Exceptions and Application Errors
- When others then Null
- Nested and Labelled Blocks
- Propagation of Exceptions
- Scope of Variables and Cursors
- Declaring Record Types
- Handling PL/SQL Records
- Nested Records
- Declaring PL/SQL Index-By Tables or Associative Arrays
- PL/SQL Table Built In Functions
- Manipulating PL/SQL Tables or Associative Arrays
Course Contents - DAY 3
Session 6: TRIGGERS- DML Triggers
- The CREATE TRIGGER Statement
- Writing Trigger Code
- INSTEAD OF Triggers
- Calling Procedures from Triggers
- Coding Restrictions
- System Event and DDL Triggers
- Attribute Functions
- Compound Triggers
- Create Trigger Follows Clause
- Managing Triggers
- Privileges required for Triggers
- Dictionary Information Concerning triggers
- What is a Procedure?
- The CREATE PROCEDURE Statement
- Procedure Parameters
- Invoking Procedures
- Local Subprograms
- Named Association Parameter Passing
- Definer's Right and Invoker's Rights
- Autonomous Transactions
- Managing Procedures
- Privileges Required for Procedures
- Dictionary Information Concerning Procedures
- The Call Statement
- What is a Function?
- The CREATE FUNCTION Statement
- Executing Functions
- Invoker's Rights
- Autonomous Transactions
- DBMS_OUTPUT
- Using Functions in SQL Statements
- Deterministic and Parallel-Enabled Functions
- Function Result Cache
- Managing Functions
- Privileges Required for Functions
- Dictionary Information Concerning Functions
Course Contents - DAY 4
Session 9: PACKAGES- What is a Package?
- Public and Private Components
- Creating a Package
- Example Package
- Persistent States
- One-time-only Procedures
- Overloading
- Purity Level Checking
- Forward Declarations
- Wrapping Packages
- Managing Packages
- Privileges Required for Packages
- Dictionary Information Concerning Packages Features
- Overview of PL/SQL Records, Index-by Tables and Associative Arrays
- Using PL/SQL Records and Tables in Packages
- Table Built-In Functions
- The NOCOPY Hint
- Bulk Collection
- Bulk Binding DML Statements
- Declare Cursor Variables
- Use Cursor Variables
- Open and Close Cursor Variables
- Fetch Rows
- Cursor Variable Attributes
- Pass Cursor Variables as Parameters
- Open and Close Cursor Variables
- Refcursor Datatype
- Dependent and Referenced Objects
- Invalidation and Recompilation
- Local and Remote Dependencies
- Recompilation Considerations
Course Contents - DAY 5
Session 13: NATIVE COMPILATION AND COMPILE-TIME WARNINGS- Introduction
- Native Compilation
- Automatic Recompilation
- Automatic program Sublining
- WHEN OTHERS ... THEN NULL
- Data Dictionary Information
- Compiler Warning Categories
- Using the DBMS_WARNING Package
- Overview of Oracle-Supplied Packages
- Using the DBMS_SQL Package
- Using Native Dynamic SQL
- The DBMS_METADATA Package
- The UTL_MAIL Package
- The DBMS_APPLICATION_INFO Package
- The DBMS_UTILITY Package
- Scheduling Jobs using the DBMS_SCHEDULER Package
- Invoker versus Definer™ Rights
- Grant Roles to PL/SQL Packages and Programs
- Programming Standards for Variables, Parameters and Constants
- Standardise Constants with a Package
- Standardise Exceptions with a Package
- Write PL/SQL Code using Local Subprograms
- Use NOCOPY Compiler Hint
- Optimise Code with the PARALLEL ENABLE hint
- Use the AUTONOMOUS TRANSACTION Pragma
Customer Outreach Award
We believe that it should be easy for you to find and compare training courses.
Our Customer Outreach Award is presented to trusted providers who are excellent at responding to enquiries, making your search quicker, more efficient and easier, too.
Reviews
Average rating 5
The course provided the exact amount of detail in each area for what I needed. I feel I have drawn a lot out of the course and this is massively improve the work that I carrying...
Kevin is a greater instructor and very knowledgeable trainer in PL/SQL database development. he has a very good mind to debug coding problems given to him.
Continuing Studies
Further Learning
- Oracle 19c SQL Performance Tuning
- Oracle Database 19c Administration
Request info
Why StayAhead. From a single person on a scheduled course to large scale training projects StayAhead Training have the expertise and experience to help. Established since 1992, StayAhead Training is recognised as one of the leading independent IT Training specialists...
The course contents included many concepts for advanced features that are usable in different situations. I would definitely recommend John as a really good instructor. He is ve...