Get in Touch
 Duration 21 hours

Course Outline

Introduction

  • Purpose and Goals
  • Schedule Overview
  • Participant Introduction
  • Prerequisites
  • Role Responsibilities

SQL Development Environment

  • Learning Objectives
  • SQL Developer Interface
  • Establishing Connections in SQL Developer
  • Examining Table Metadata
  • Executing Queries in SQL Developer
  • SQL*Plus Authentication
  • Direct Database Connection
  • Operating SQL*Plus
  • Terminating Sessions
  • SQL*Plus Command Reference
  • SQL*Plus Runtime Environment
  • SQL*Plus Prompt Indicators
  • Retrieving Table Information
  • Accessing Help Resources
  • Executing SQL Scripts
  • iSQL*Plus and Entity Models
  • The ORDERS Table Structure
  • The FILM Table Structure
  • Reference Materials for Course Tables
  • SQL Syntax Standards
  • SQL*Plus Command Review

Overview of PL/SQL

  • Definition of PL/SQL
  • Benefits of PL/SQL Adoption
  • Program Block Structure
  • Outputting Messages
  • Illustrative Code Samples
  • Configuring SERVEROUTPUT
  • Update Logic and Coding Standards

Variable Management

  • Variable Concepts
  • Data Type Specifications
  • Variable Assignment
  • Constant Definitions
  • Scope: Local vs. Global Variables
  • %Type Variable Usage
  • Substitution Variables
  • Including Comments with Ampersand
  • Validation Options
  • Persistent & Variables
  • Managing Definitions: Define and Undefine

Implementing the SELECT Statement

  • Constructing SELECT Statements
  • Assigning Query Results to Variables
  • Utilizing %Rowtype Variables
  • Applying the CHR Function
  • Independent Practice Module
  • Defining PL/SQL Records
  • Record Declaration Examples

Conditional Logic

  • IF Statement Implementation
  • SELECT Logic Integration
  • Independent Practice Module
  • CASE Statement Usage

Error Handling Mechanisms

  • Exception Concepts
  • System-Generated Errors
  • Retrieving Error Codes and Messages
  • Handling No Data Found Scenarios
  • Defining User Exceptions
  • Raising Application Errors
  • Handling Undefined Exceptions
  • Using PRAGMA EXCEPTION_INIT
  • Managing Transactions: Commit and Rollback
  • Independent Practice Module
  • Nested Block Structures
  • Practical Exercise

Looping Constructs

  • BASIC LOOP Implementation
  • WHILE LOOP Logic
  • FOR LOOP Iteration
  • Control Flow with GOTO and Labels

Cursor Management

  • Cursor Fundamentals
  • Cursor Attribute Access
  • Explicit Cursor Definitions
  • Explicit Cursor Usage Example
  • Cursor Declaration Syntax
  • Variable Declaration for Cursors
  • Opening Cursors and Fetching Initial Rows
  • Iterative Row Fetching
  • Termination Logic with %NOTFOUND
  • Closing Cursors
  • FOR Loop Integration Part I
  • FOR Loop Integration Part II
  • Update Logic Demonstration
  • Row Locking with FOR UPDATE
  • Column-Specific Locking with FOR UPDATE OF
  • Positional Updates with WHERE CURRENT OF
  • Transaction Control with Cursors
  • Validation Scenario I
  • Validation Scenario II
  • Parameterized Cursors
  • Practical Exercise
  • Exercise Solution Key

Subprograms and Modular Code

  • CREATE Statement Syntax
  • Parameter Definitions
  • Procedure Logic Implementation
  • Error Reporting in Procedures
  • Procedure Metadata Description
  • Invoking Procedures
  • Calling Procedures via SQL*Plus
  • Managing Output Parameters
  • Passing Output Parameters in Calls
  • Function Development
  • Function Implementation Example
  • Error Reporting in Functions
  • Function Metadata Description
  • Invoking Functions
  • Calling Functions via SQL*Plus
  • Principles of Modular Programming
  • Procedure Implementation Example
  • Function Invocation
  • Integrating Functions in Conditional Logic
  • Package Development
  • Package Implementation Example
  • Advantages of Package Usage
  • Access Control: Public and Private Subprograms
  • Error Reporting in Packages
  • Package Metadata Description
  • Calling Packages via SQL*Plus
  • Invoking Packages from Subprograms
  • Removing Subprograms
  • Locating Existing Subprograms
  • Developing Debugging Packages
  • Utilizing Debugging Packages
  • Parameter Passing: Positional and Named Notation
  • Setting Default Parameter Values
  • Recompilation of Subprograms
  • Practical Exercise

Database Triggers

  • Trigger Creation Process
  • Statement-Level Triggers
  • Row-Level Triggers
  • Conditional Logic with WHEN Clause
  • Selective Trigger Execution
  • Error Handling in Triggers
  • Transaction Control in Triggers
  • Trigger Limitations
  • Mutating Table Restrictions
  • Identifying Existing Triggers
  • Removing Triggers
  • Automatic Number Generation
  • Disabling Triggers
  • Enabling Triggers
  • Naming Conventions for Triggers

Reference Data

  • ORDER Table Structures
  • FILM Table Structures
  • EMPLOYEE Table Structures

Dynamic SQL Execution

  • Embedding SQL in PL/SQL
  • Variable Binding Techniques
  • Dynamic SQL Concepts
  • Native Dynamic SQL (NDS) Methods
  • Executing DDL and DML Dynamically
  • Utilizing the DBMS_SQL Package
  • Dynamic SELECT Statements
  • Dynamic SELECT Procedures

File I/O Operations

  • Text File Processing
  • UTL_FILE Package Functions
  • Write and Append Operations
  • Read Operations Example
  • Trigger-Based File Operations
  • DBMS_ALERT Package Utilization
  • DBMS_JOB Package Utilization

Collection Data Types

  • %Type Variable Collections
  • Record Variable Collections
  • Collection Type Overview
  • Associative Arrays (Index-By Tables)
  • Assigning Collection Values
  • Handling Missing Elements
  • Nested Table Structures
  • Nested Table Initialization
  • Constructor Function Usage
  • Populating Nested Tables
  • VARRAY Implementations
  • VARRAY Initialization
  • Populating VARRAYs
  • Multilevel Collection Structures
  • Bulk Binding Operations
  • Bulk Binding Example
  • Transaction Considerations
  • BULK COLLECT Clause Usage
  • RETURNING INTO Clause

Reifiable Cursors

  • Cursor Variable Concepts
  • Defining REF CURSOR Types
  • Declaring Cursor Variables
  • Constrained vs. Unconstrained Cursors
  • Cursor Variable Operations
  • Cursor Variable Implementation Examples

Requirements

Participants are expected to possess foundational knowledge of SQL to successfully engage with the course content.

Prior experience with interactive computing systems is recommended but is not a mandatory requirement for admission.

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories