You are on page 1of 85

SAGE Computing

Services

Course Catalogue
Please note that while this catalogue represents our standard courses, customised
courses can be developed to suit our clients’ requirements

Telephone: 041 990 4458


Facsimile: 08 9243 4335
www.sagecomputing.com.au
enquiries@sagecomputing.com.au
ORACLE JDEVELOPER 11G – 5 DAYS 4

ORACLE JDEVELOPER 11G OVERVIEW – 1 DAY 9

ORACLE 11G NEW FEATURES FOR DEVELOPERS - 1 DAY 11

ORACLE 10G NEW FEATURES FOR DEVELOPERS - 1 DAY 13

APPLICATION EXPRESS (PREVIOUSLY HTMLDB) WORKSHOP - 3 DAYS 15

ADVANCED APPLICATION EXPRESS WORKSHOP - 2 DAYS 23

ORACLE SQL AND SQL*PLUS WORKSHOP 4 DAYS – ORACLE 11G 25

ORACLE SQL AND SQL*PLUS WORKSHOP 4 DAYS – ORACLE 10G REL2 28

PL/SQL WORKSHOP (11G) - 3 DAYS 32

PL/SQL WORKSHOP (10G) - 3 DAYS 36

ORACLE FORMS DEVELOPER WORKSHOP - 5 DAYS 39

ORACLE REPORTS WORKSHOP 10G - 4 DAYS 46

ORACLE 10G - DATABASE ADMINISTRATION WORKSHOP - 5 DAYS 50

ORACLE 9I - DATABASE ADMINISTRATION WORKSHOP - 5 DAYS 54

APPLICATION TUNING WORKSHOP 11G - 3 DAYS 58

APPLICATION TUNING WORKSHOP 10G - 3 DAYS 61

ORACLE DISCOVERER WORKSHOP - 2 DAYS 64

ORACLE END USER WORKSHOP - 2 DAYS 66

APPLICATION DESIGN WORKSHOP - 3 DAYS 68

TUNING AND TROUBLESHOOTING YOUR ORACLE DATABASE - 2 DAYS 71

ORACLE DESIGNER 74

ANALYSIS AND DESIGN WORKSHOP V10G - 5 DAYS 74


ORACLE DESIGNER 77

DESIGN AND GENERATION V10G WORKSHOP - 5 DAYS 77

ORACLE PORTAL WORKSHOP - 3 DAYS 80

ADVANCED ORACLE PORTAL WORKSHOP - 1 DAY 83

ORACLE PORTAL OVERVIEW WORKSHOP - 1 DAY 85


Oracle JDeveloper 11g – 5 Days
ADF Business Components
ADF Faces Rich Client

This course is designed to provide students with the skills and knowledge required to
develop a web application using ADF Business Components and ADF Faces Rich Client
(JavaServer Faces) web pages within Oracle JDeveloper 11g.

The course is aimed at Oracle Forms programmers and those not knowledgeable in
Java in learning the JEE technology stack as implemented in JDeveloper. It also caters
for programmers interested in learning the JSF web components and how they are
supported by JDeveloper.

We also offer a 10.1.3 variant of this course.

A knowledge of SQL and PL/SQL is desirable.


A knowledge of object-oriented concepts and Java is desirable.

JDeveloper Introduction
Product Overview
Productivity Features & Supported Technologies
History
Useful Resources
Installation and JDeveloper Platform Requirements
The IDE

SQL Developer
Creating Database Connections
Working With Database Objects
Browsing Database Objects
SQL Worksheet
Working With Stored Program Units
Debugging Pl/Sql

Applications, Projects And Files


Applications
Projects
Creating Files
Working Sets

Database Modelling
Offline vs Online Modelling
Offline Modelling
Importing Offline Database Objects
Working with the Database Diagrammer
Database Generation

Java Language
Objectives
History
Object-Oriented Concepts
Implementing Java - File Types
Java Language Basics
Creating Java classes in JDeveloper
Java Language Terminology

Application Development Framework


Model-View-Controller Architecture
JEE MVC in Practice
JDeveloper's MVC Architecture
Oracle's Application Development Framework
ADF Development Method

ADF Business Components


General Introduction
ADF Business Components XML Files and Java Classes
Creating Business Components from Tables
Business Components Browser

ADF Entity Objects


Object-Relational Mapping
Characteristics and Usage
Implementation
Entity Objects Wizard & Editor

ADF Associations
Associations Wizard & Editor

Implementing Validation
Declarative Validation
Groovy Expressions
ADF Domains
Business Logic Groups

ADF Application Modules


Shared Application Modules
Application Module Nesting
Application Modules Wizard & Editor

ADF View Objects


View Object Wizard & Editor
Updatable access through entity objects
Read-only access through SQL query
Rows Populated Programmatically, not Based on a Query
Rows populated at design time (static list)

ADF View Links


View Link Wizard & Editor

ADF BC Configuration
Application & Project Properties
Libraries and Packages
Business Components Base Classes
Custom Base Class Framework
Business Components Naming Conventions Preferences
Business Component Object Name and Package Guidelines

ADF BC Java Classes


Entity Objects Classes
View Objects Classes
Application Modules Classes
Working With The Adf Business Component Classes
Finding View Object Instances With An Application Module
Accessing View Object Rows
Creating And Deleting Rows

JavaServer Faces
Creating a JSF Project
Creating & Editing a JSF Page
UI Components
A Basic JSF Page Example
JSF Configuration and faces-config.xml
Managed Beans

JSF Navigation, Event Handling and JSF Lifecycle


Static & Dynamic Navigation
JSF Events and Listeners
JSF Lifecycle

Expression Language

ADF Faces Rich Client


Working with ADF Faces RC Pages
Working with an ADF Faces RC Component Tree
Working with EL, Bindings and Page Definitions
Working with the ADF Bindings

ADF Binding Layer


ADF Model Layer Terminology & Classes
Accessing the ADF Model Layer in a Managed Bean

ADF Read-Only Table


ADF Input, Output, Command and Select Components

Data Bound Pages


Forms
Tables
Master-Detail
Trees
Query Pages

Partial Page Refresh and Lists of Values


Declaratively Configuring PPR
Automatic PPR in ADF Components
Programmatically Configuring PPR
Using PPR Navigation
Cascading List of Values

Page Navigation and Unbounded Task Flows


Creating & Editing
Activity Types

Page Layout, Templates and Skins

Menus and Toolbars

Popups, Dialogs and Windows


Inline Popup Windows
External Browser Window Popups

Bounded Task Flows, Regions and Page Fragments


Bounded Task Flow Advantages
Creating & Editing Bounded Task Flows
Trains
Regions
Page Fragments

Data Visualisation Components


Graph
Gauge
Pivot Table
Gantt Chart
Geographic Map

Deploying an ADF Application


Weblogic – The New Preferred Deployment Platform
Weblogic Installation & Preparation
Domains / Servers / Machines / (Clusters)
Weblogic Package Installation
Weblogic ADF Preparation – ADF (& JDev) Runtimes
Creating an ADF ready Domain and Managed Server
Connections & Data Sources
JDev Weblogic Connection
Weblogic JDBC Data Sources
Deployment
JARs, WARs, EARs and JDeveloper
Deployment Profiles
JDeveloper Auto Deployment
Testing your Application

Security
ADF Security
ADF Business Component Security
Runtime Security Context
Oracle JDeveloper 11g Overview – 1 Day
ADF Business Components
ADF Faces Rich Client

This course is designed to provide students with an insight into the features of the
Oracle JDeveloper ADF Business Component & ADF Faces RC development
environment. It will allow attendees to assess whether this environment is suitable for
their development requirements before embarking on a detailed study of the tool.

We also offer a 10.1.3 variant of this course.

No previous experience is required.

JDeveloper Introduction
Productivity
Technologies
History
New JDeveloper 11g Features
Useful Resources
Installation
IDE
Application Workspaces and Projects
Database Connections

Application Development Framework


ADF Business Components
ADF Faces Rich Client
Model-View-Controller
JEE MVC in Practice
JDeveloper’s MVC Architecture

ADF Business Components


Creating Business Components from Tables
Business Components Browser

ADF Entity Objects


Creating and Editing Entity Objects
Attribute Default Values
Attribute Formatting
Attribute and Entity Validation

ADF View Objects


Types
Creating and Editing View Objects
Creating Transient Calculated Attributes
Creating Bind Variables
Creating Declarative List of Values (LOVs)

ADF Application Modules


Creating and Editing Application Modules
Exposing View Objects and Links

ADF Faces Rich Client


ADF Faces RC vs JSF
UI Component Tree

Creating Simple ADF Faces RC Web-Pages


ADF Input Form
Create JSF Page Dialog
Editing a JSF Web-Page
Running a Web-Page
Creating an ADF Input Form
ADF Read-Only Table
ADF Master-Detail Page
Create an ADF Master-Detail Page

JSF Page Navigation


Creating Web-Pages in the Task Flow Diagrammer
Creating Static Navigation Rules in the Task Flow Diagrammer
Using the Control Flow Case in your Web-Page
Setting the Default Run Target for an Unbounded Task Flow

Enhancing Your Web-Page


Creating a Checkbox component
Creating a Static Poplist
Creating a Dynamic Poplist
Oracle 11G New Features for Developers - 1 Day

The course is designed to provide the student with an understanding of the new features
of Oracle 11G which are aimed at developers.

Students should have experience of developing in the Oracle 10g environment

The Development Environment


Where is SQL*Plus?
Introdution to SQL Developer
The SQL Developer Interface
Using Help
Creating a Database Connection
Browsing Database Objects
Using the SQL Worksheet
Managing scripts in SQL Developer
Managing database objects

New SQL Features


Sequences in PL/SQL Expressions
Enhancements to Regular Expressions
Flashback transaction
Flashback Data Archive
Locking during DDL
Adding columns with defaults
Reduced locking in online index creation and rebuild
Making a table read only
SQL*Plus BLOB support
SQL PIVOT and UNPIVOT
Virtual columns

PL/SQL Enhancements
SIMPLE_INTEGER data type
Calling functions from SQL with named parameter notation
Using CONTINUE in loops
Controlling trigger order
Compound triggers
Dynamic SQL enhancements
Enhancements to dependency management
PL/Scope

PL/SQL Packages
XML DB enhancements
New packages
Changed packages

Performance Enhancements
PL/SQL Inlining Optimisation
Native compilation enhancements
Invisible indexes
Query rewrite enhancements
Partitioning enhancements
Adaptive cursors
Publishing statistics
Extended statistics
SQL Plan management
SQL Results cache
PL/SQL Results cache
Bitmap join indexes on IOTs
Database Replay
Automatic tuning
Monitoring SQL using V$SQL_MONITOR and V$SQL_PLAN_MONITOR
Oracle 10G New Features for Developers - 1 Day

The course is designed to provide the student with an understanding of the new features
of Oracle 10G Release 2 which are aimed at developers.

Students should have experience of developing in the Oracle 9i environment

SQL*Plus Enhancements
Glogin and Login
Spooling
Saving Files

Flashback
The Recycle Bin
Flashback Drop
Flashback Queries

Enhanced SQL commands


The MERGE Statement
CONNECT BY

New SQL Features


Manipulating Data with the MODEL Clause
Regular Expressions
Case Insensitive Searching and Sort
New Data Types
New Statistical Functions
Row Timestamp

Data Pump
Importing and Exporting
External Tables

PL/SQL Enhancements
Expression Matches
PL/SQL Warning
Conditional Compilation
Bulk Operations
Collections
Quoting Character

PL/SQL Packages
Fine Grained Auditing
DBMS_SCHEDULER
UTL_MAIL
Performance Enhancements
IOT Enhancements
Hash Cluster Enhancements
Automatic Statistics Gathering
SQL Tuning Advisor
SQLAccess Advisor
Materialised View Enhancements
The trcsess Utility
New Optimizer Hints
Deprecated Optimizer Hints
Application Express 4.0 Workshop - 3 Days

The course is designed to provide the student with the skills and knowledge required to
develop a complete application using Oracle’s Application Express product. The student
will develop web interfaces including forms, reports and charts, add validation and
customise the formatting to create a small application.

No experience is required.
Basic PL/SQL , HTML and JavaScript skills are an advantage but are not essential.

Product Overview
Target audience
Product Features
Development Approach
Product architecture
Apex Listener
Concepts – Workspaces and Applications
The Application Express User Interface
Navigating in the Product
Help
Running an Application

SQL Workshop
The Object Browser
Creating and Browsing Database Objects
Query Builder
Executing SQL commands
Creating and Running Scripts
Creating Database Objects
Defining User Interface Defaults

Application Builder
Creating an Application Based on a Spreadheet
Creating an Application From Scratch
Reviewing and Editing Application Objects
The Developer Toolbar
Creating a Page
Creating a SQL Report
Page Rendering and Processing Overview
Create a Form and Associated Report

Team Development
Features
Milestones
To Dos
Bugs
Feedback
News

Websheets
Websheets Overview
Websheet Application Navigation
Websheet Inferfance Components
Annotations

Creating Pages
Creating a Page Group
Assigning Pages to Groups
The Page Definition Screen
Page Attributes
Report Wizard
Form Wizard
Editing the Page
Page Processing
Page Attributes
Page Utilities

Regions and Items


Create a Region
The Region Wizards
Editting a Region
Adding Items
Modifying and Item
Item Display Types
Adding Buttons
Conditionally Displaying Regions
Customise Queries
Report Attributes
Downloading the Report to a CSV File

Page Processing
On Load Processing
Adding Validation
Computations
Dynamic Actions
AJAX Callbacks
Plug-ins
Branching
Calling a Page – URL syntax
Using Variables
Session State
Getting Session State
Seeting Session State
Viewing a Page in Debug Mode
Shared Components
Logic Components
Lists
Breadcrumbs
Lists of Values
Tabs
Navigation Bars
Processes
Items
Shortcuts
Webservices

Themes and Templates


Themes
Theme repository
Managing templates
Page Templates
Region templates
Other Templates
Subscribing to a Template
Cascading Style Sheets

Other Page and Region Types


Interactive reports
Creating Charts
Creating Calendars
Creating Trees
Creating a Wizard
Using Page 0

Utilities and Reporting


Translations
Managing CSS and Image Files
Uploading Images
Exporting and Importing

Advanced Development Techniques


Authentication
Authorisation
Access Control Wizard
Cross Site Scripting
Session State Protection
Using Page 0
Using AJAX
The Application Express API
Recommendations

Administration and Deploying An Application


Builds
Application Packaging
Managing Application Expres
Provisioning Workspaces
User Administration
Purging Logs
Purging Session State
Manage Application Models
Workspace Preferences

Utilities
Importing Data
Exporting Data
Database Monitor
Generating DDL
Object Reports
Recycle Bin
Application Express 4.0 New Features Workshop - 1
Days

The course is designed to familiarize current Application Express developers with the
exciting new features in Apex 4.0. Topics will include the changes in the interface, new
client events , tabular form enhancements, web sheets and team development.
Attendees should be familiar with Application Express 3

Introduction to Apex 4.0


Product Features
What’s coming in 4.1
Apex Listener

Developer Features
Improved Application Builder
Sub regions
Plugins
Dynamic Actions
AJAX Callbacks
Cascading LOVs
Enhanced Debugging
Tree View
RESTful Web Service Support

End User Enhancements


Enhanced Interactive Reports
Better Themes
JQuery Integration
Chart Enhancements
Declarative Accessability Settings

Websheets
Websheets Overview
Websheet Application Navigation
Websheet Inferfance Components
Annotations

Team Development
Utilising the Team Development module
Features
Milestones
To Dos
Bugs
Feedback
News
Application Express (Previously HTMLDB) Workshop - 3
Days

The course is designed to provide the student with the skills and knowledge required to
develop a complete application using Oracle’s Application Express product. The student
will develop web interfaces including forms, reports and charts, add validation and
customise the formatting to create a small application.

No experience is required.
Basic PL/SQL , HTML and JavaScript skills are an advantage but are not essential.

Product Overview
Target audience
Product Features
Development Approach
Product architecture
Concepts – Workspaces and Applications
The Application Express User Interface
Navigating in the Product
Item Finder Search Tool
Running an Application

SQL Workshop
The Object Browser
Creating and Browsing Database Objects
Query Builder
Executing SQL commands
Creating and Running Scripts
Creating Database Objects
Defining User Interface Defaults

Utilities
Importing Data
Exporting Data
Database Monitor
Generating DDL
Object Reports
Recycle Bin

Application Builder
Creating an Application Based on a Spreadheet
Creating an Application From Scratch
Reviewing and Editing Application Objects
The Developer Toolbar
Creating a Page
Creating a SQL Report
Page Rendering and Processing Overview
Create a Form and Associated Report

Creating Pages
Creating a Page Group
Assigning Pages to Groups
The Page Definition Screen
Page Attributes
Report Wizard
Form Wizard
Editing the Page
Page Processing

Regions and Items


Create a Region
The Region Wizards
Editting a Region
Adding Items
Modifying and Item
Item Display Types
Adding Buttons
Conditionally Displaying Regions
Customise Queries
Report Attributes
Downloading the Report to a CSV File

Page Processing
On Load Processing
Adding Validation
Computations
Branching
Calling a Page – URL syntax
Using Variables
Session State
Getting Session State
Seeting Session State
Viewing a Page in Debug Mode

Shared Components
Logic Components
Lists
Breadcrumbs
Lists of Values
Tabs
NavBars
Processes
Items
Shortcuts
Webservices

Themes and Templates


Themes
Theme repository
Managing templates
Page Templates
Region templates
Other Templates
Subscribing to a Template
Cascading Style Sheets

Other Page and Region Types


Interactive reports
Creating Charts
Creating Calendars
Creating Trees
Creating a Wizard
Using Page 0

Utilities and Reporting


Translations
Managing CSS and Image Files
Uploading Images
Exporting and Importing

Advanced Development Techniques


Authentication
Authorisation
Access Control Wizard
Cross Site Scripting
Session State Protection
Using Page 0
Using AJAX
The Application Express API
Recommendations

Administration and Deploying An Application


Builds
Application Packaging
Managing Application Expres
Provisioning Workspaces
User Administration
Purging Logs
Purging Session State
Manage Application Models
Workspace Preferences
Advanced Application Express Workshop - 2 Days

The course is designed for developers who have already covered the basics of
Application Express, have some experience of using the product, and want to move into
more advanced techniques. It includes best practices for development, advanced
reporting, and techniques for making the user interface of your applications more
visually and functionally attractive.

Attendees should have some experience with building applications in Application


Express.

Some PL/SQL, HTML and JavaScript skills are an advantage.

Best Practices in Apex Development


Managing Workspaces
Where to put your code
Documenting an Apex application
Where to locate files
Using Page zero
Tips and techniques for ease of development

Creating a Custom Theme


Components of a Theme
Creating a custom style sheet
Creating a custom theme
Implementing the custom theme
Using custom styles

Developing a standard application to copy


Using the custom theme
Adding processes
App items
LOVs
Creating the template app

Managing Session State


How session state works
Setting and getting session state
Common traps

Building Tabular Forms


Tabular forms issues
Validation in tabular forms
Manually creating a tabular form
Working with collections
The Apex PLSQL API
Hand crafting your page regions
Sending emails
Uploading and downloading files

Creating More Advanced Applications


Building dynamic navigation
Providing user help
Date formatting
Using Web Services fom Apex
Controlling Interactive Reports

Adding JavaScript and Ajax to the Application


Using JavaScript
How Ajax works
Using Ajax in your Apex application
Dynamic Lists of Values
Ajax enabled trees
Displaying page regions

Extending Apex
Using a Javascript framework
3rd party libraries

Advanced Reporting
Creating dynamic reports
Creating drill down reports
Reporting options
Using report queries and layouts
Calling reports using the API
Advanced reporting with BI Publisher
Using alternative FOP processers

Managing Application Development


Managing Apex from SQL Developer
The Build Option
Collaborative development
Exporting components
Application Packaging
Managing change
Monitoring
Purging Logs

Managing Security
Authentication
Authorisation
Preventing SQL injection
Cross Site Scripting
Session State Protection
Oracle SQL and SQL*Plus Workshop 4 Days – Oracle 11G

The course is designed to provide the student with a basis for developing systems using
the Oracle database. The SQL language is covered from simple to complex constructs.
Guidelines are provided on writing SQL for optimum performance and ease of
maintenance.

No previous experience is required.

The Relational Model


Characteristics of the Relational Model
Components of the Relational Model
Overview of Oracle Data Types

The Oracle Development Environment


Introdution to SQL Developer
The SQL Developer Interface
Using Help
Creating a Database Connection
Browsing Database Objects
Using the SQL Worksheet

The SQL Language


The SELECT Statement
Using a Column Alias
Ordering the Data

More about SELECT


Concatenation
Null Values
Wildcards
Bounded Ranges
Distinct Values
The IN Clause
The CASE expression

More About the Oracle Development Environment


Command line SQL*Plus
Session Options in SQL*Plus
Formatting in SQL*Plus
Managing scripts in SQL Developer
Defining a Substitution Variable
Assigning Parameter Values Interactively
Functions
Date Functions
Character Functions
Regular Expressions
Number Functions
All Data Types
Nested Functions

Joins
Foreign Keys
Writing a Select Statement with a Join Condition
Using a Table Alias
Joining Additional Tables
Outer Joins

Group and Analytical Functions


Common Group Functions
The Group By Statement
The Having Clause
Analytical Functions
The Model Clause

Set Operators
UNION
INTERSECT
MINUS
Uses for Set Operators

Subqueries
Syntax
Number of Rows Returned
Correlated Subqueries
Subqueries in the FROM clause

Data Manipulation Language


The Insert Statement
Multi-table Insert
The Update Statement
The Delete Statement
The Merge Statement
Commit and Rollback

Database Objects
Data Types
Tables and Columns
Creating a Table
Altering a Table
Virtual Columns
The Truncate Command
The Recycle Bin
External Tables
The Storage Clause
Making a Table Read Only

Constraints
Constraint Types
Primary Key
Unique Key
Check Constraint
Default
Referential Integrity Constraint
Enabling and Disabling Constraints
Deferred Constraints

Views and Sequences


Simple Views
Complex Views
Creating and Altering Sequences
Generating Numbers from a Sequence

Indexes
B*Tree Indexes
Bitmap Indexes
The Optimizer
An overview of tuning issues
Index Organised Tables
The Data Dictionary

Security
Database Schemas
System Privileges
Object Privileges
Roles
Synonyms

Locking and Read Consistency


Data Dictionary Locks
Row Locks
Read Consistent Snapshots
Flashback
Flashback Data Archive

More Advanced SQL


Tree Walking
Using SQL to Write SQL
Uses of Functions
SQL PIVOT and UNPIVOT
Oracle SQL and SQL*Plus Workshop 4 Days – Oracle 10G Rel2

The course is designed to provide the student with a basis for developing systems using
the Oracle database. The SQL language is covered from simple to complex constructs.
Guidelines are provided on writing SQL for optimum performance and ease of
maintenance.

No previous experience is required.

The Relational Model


Characteristics of the Relational Model
Components of the Relational Model
Overview of Oracle Data Types

The SQL Language


The SELECT Statement
Using a Column Alias
Ordering the Data

SQL*Plus
Using SQL*Plus
Editing the Last Command
Editing using the System Editor
Writing Commands in Scripts
Executing an Operating System Command

Oracle SQL Developer


Introdution to SQL Developer
The SQL developer Interface
Browsing Database Objects
Entering SQL

More about SELECT


Concatenation
Null Values
Wildcards
Bounded Ranges
Distinct Values
The IN Clause
The CASE expression

Substitution Variables
Defining a Substitution Variable
Assigning Parameter Values Interactively
Assigning using DEFINE
Assigning using ACCEPT

Using SQL*Plus for Formatting Output


Spooling your Output to a File
Creating a Report Title
Session Options
Formatting Columns
More on Formatting - the Body of the Report
Displaying more Information in the Title
Displaying Summary Fields

Functions
Date Functions
Character Functions
Regular Expressions
Number Functions
All Data Types
Nested Functions

Joins
Foreign Keys
Writing a Select Statement with a Join Condition
Using a Table Alias
Joining Additional Tables
Outer Joins

Group and Analytical Functions


Common Group Functions
The Group By Statement
Common Analytical Functions
The Model Clause

Set Operators
UNION
INTERSECT
MINUS
Uses for Set Operators

Subqueries
Syntax
Number of Rows Returned
Correlated Subqueries
Subqueries in the FROM clause
Tuning

Data Manipulation Language


The Insert Statement
Multi-table Insert
The Update Statement
The Delete Statement
The Merge Statement
Commit and Rollback

Database Objects
Data Types
Tables and Columns
Creating a Table
Altering a Table
The Truncate Command
The Recycle Bin
External Tables
The Storage Clause

Constraints
Constraint Types
Primary Key
Unique Key
Check Constraint
Default
Referential Integrity Constraint
Enabling and Disabling Constraints
Deferred Constraints

Views and Sequences


Simple Views
Complex Views
Creating and Altering Sequences
Generating Numbers from a Sequence

Indexes
B*Tree Indexes
Bitmap Indexes
The Optimizer
Index Organised Tables
The Data Dictionary

Security
Database Schemas
System Privileges
Object Privileges
Roles
Synonyms

Locking and Read Consistency


Data Dictionary Locks
Row Locks
Read Consistent Snapshots
Flashback
More Advanced SQL
Tree Walking
Using SQL to Write SQL
Uses of Functions
PL/SQL Workshop (11g) - 3 Days

This course is for developers who will be designing or building applications using the
Oracle server. It is relevant for developers who are using the Oracle Developer toolset,
and for those using alternative front-end products accessing the Oracle database. The
course covers basic PL/SQL syntax and the use of server level procedures, functions
and triggers.

A knowledge of SQL is required.

PL/SQL Overview
PL/SQL Features
PL/SQL Engines
PL/SQL Versions

The Oracle Development Environment


Introdution to SQL Developer
The SQL Developer Interface
Using Help
Creating a Database Connection
Browsing Database Objects
Using the SQL Worksheet
Managing Scripts

Basic PL/SQL Syntax


Structure of a Block
Defining Variables and Constants
Data Types
Naming Standards
Executing PL/SQL from SQL*Plus

SQL Statements in PL/SQL


Valid SQL Statements
Select Statements
Implicit Cursors

Procedural Statements - Assignment and Conditional Processing


Assigning Values to Variables
Functions in PL/SQL
Sequences in PL/SQL Expressions
Conditional Processing
Case Expressions and Statements
Procedural Statements - LOOPS
BASIC LOOP
WHILE LOOP
FOR LOOP
Using CONTINUE
GOTO

Exceptions
What is an Exception?
Internal Exceptions
User Defined Exceptions
The RAISE command

Nested Blocks and Cursors


Nested Blocks Scope
Explicit Cursors
Cursors For Loops
WHERE CURRENT OF Clause
Cursor Variables

Tables, Arrays and Records


User Defined Records
Collections
Associative Arrays
Nested Tables
Varrays
Bulk Bind and Collect
Collections

Architecture Overview
Files
Memory Structures
Processes
Execution of SQL Statements
Parsing
Writing Efficient SQL Statements to Share Memory Areas
Recommendations on SQL

Procedures / Functions
Purpose
Managing stored program units in SQL Developer
Creating Procedures
Creating Functions

Execution and Error Handling


Invoking Procedures and Functions
Passing Parameters
Types of Errors
Error Handling
PL/SQL Compilation Warnings
Conditional Compilation

Security and Dependency


Security Issues
Definer and Invoker Rights
Debugging Procedures
Dependency Issues
Remote Dependency Mode
Dependency Management

Packages
The Purpose of Packages
Creating Packages
Initialisation code
Security and Packages
Dependency Issues
Data Dictionary Information

More About Packages


Cursors in Packages
Persistent Variables
Overloading
Packages witout a Body
Guidelines on Using Packages
PL/SQL Wrapper

Supplied Packages
Dynamic SQL
Utility Packages
Packages that Provide Additional Functionality
Advanced Queueing
Scheduler
UTL_MAIL
DBMS_FLASHBACK
DBMS_METADATA
PL/Scope

Triggers
Characteristics / Types
Creating Triggers
Enabling / Disabling Triggers
Restrictions on Triggers
Data Dictionary Information

More About Triggers


Controlling trigger order
Compound triggers
Enabling and Disabling
More Restrictions
Instead of Triggers
Schema and Database Triggers

Large Objects
Differences Between LOBS and LONGS
Creating BLOBS and CLOBS
Creating BFILES
Manipulating LOBs
Using the DBMS_LOB Functions
Temporary LOBS
PL/SQL Workshop (10g) - 3 Days

This course is for developers who will be designing or building applications using the
Oracle server. It is relevant for developers who are using the Oracle Developer toolset,
and for those using alternative front-end products accessing the Oracle database. The
course covers basic PL/SQL syntax and the use of server level procedures, functions
and triggers.

A knowledge of SQL is required.

PL/SQL Overview
PL/SQL Features
PL/SQL Engines
PL/SQL Versions

Basic PL/SQL Syntax


Structure of a Block
Defining Variables and Constants
Data Types
Naming Standards
Executing PL/SQL from SQL*Plus

SQL Statements in PL/SQL


Valid SQL Statements
Select Statements
Implicit Cursors

Procedural Statements - Assignment and Conditional Processing


Assigning Values to Variables
Functions in PL/SQL
Conditional Processing
Case Expressions and Statements

Procedural Statements - LOOPS


BASIC LOOP
WHILE LOOP
FOR LOOP
GOTO

Exceptions
What is an Exception?
Internal Exceptions
User Defined Exceptions
The RAISE command

Nested Blocks and Cursors


Nested Blocks Scope
Explicit Cursors
Cursors For Loops
WHERE CURRENT OF Clause
Cursor Variables

Tables, Arrays and Records


User Defined Records
Collections
Associative Arrays
Nested Tables
Varrays
Bulk Bind and Collect
Collections

Architecture Overview
Files
Memory Structures
Processes
Execution of SQL Statements
Parsing
Writing Efficient SQL Statements to Share Memory Areas
Recommendations on SQL

Procedures / Functions
Purpose
Creating Procedures
Creating Functions

Execution and Error Handling


Invoking Procedures and Functions
Passing Parameters
Types of Errors
Error Handling
PL/SQL Compilation Warnings
Conditional Compilation

Security and Dependency


Security Issues
Definer and Invoker Rights
Debugging Procedures
Dependency Issues
Remote Dependency Mode
Dependency Management

Packages
The Purpose of Packages
Creating Packages
Initialisation code
Security and Packages
Dependency Issues
Data Dictionary Information

More About Packages


Cursors in Packages
Persistent Variables
Overloading
Packages witout a Body
Guidelines on Using Packages
PL/SQL Wrapper

Supplied Packages
Dynamic SQL
Utility Packages
Packages that Provide Additional Functionality
Advanced Queueing
Scheduler
UTL_MAIL
DBMS_FLASHBACK
DBMS_METADATA

Triggers
Characteristics / Types
Creating Triggers
Enabling / Disabling Triggers
Restrictions on Triggers
Data Dictionary Information

More About Triggers


Enabling and Disabling
More Restrictions
Instead of Triggers
Schema and Database Triggers

Large Objects
Differences Between LOBS and LONGS
Creating BLOBS and CLOBS
Creating BFILES
Manipulating LOBs
Using the DBMS_LOB Functions
Temporary LOBS
Oracle Forms Developer Workshop - 5 Days

This course is designed for developers who will be designing or building applications
using Oracle Form Builder. This is a practical course in which the student builds an
application during a series of workshop sessions.

A knowledge of SQL and PL/SQL is required.


Courses can be based on Oracle Forms 6i, Oracle Forms 9i or Oracle Forms 10G

Running a Form
Product Overview
Form Builder From a User Perspective
Form Builder Screens
Form Builder Screen Components
Navigation
Operations
Clearing Data and Exiting

Forms Modules and Storage


Module Types
Storage Formats
Saving and Generating Form Builder Modules
Saving a Form as XML
Source Control Management

Working in the Builder


Features Of The Builder Interface
The Object Navigator
The Layout Editor
The Property Palette
The PL/SQL Editor
Synchronisation Of Form Builder Windows
Menu Structure
Running a Form from the Builder

Creating a Form
Form Structure
Forms and the Database
Creating a Form
Creating a New Data Block
The Data Block Wizard
The Layout Wizard
Creating Master - Detail Data Blocks
Saving and Generating the Form
Form and Data Block Properties
Form Properties
Data Block Properties

Form Layout
The Layout Editor
Frames
Customising the Layout Editor
Selecting Objects
Sizing Objects
Arranging Objects
Setting Attributes
The Tool Palette
Drawing Tools for Creating Boilerplate Objects and Text
Tools for Creating Forms Items
Colour and Pattern Tools
Import and Export

Items
Item Types
Creating An Item
Overview Of Item Types
Item Icons In The Layout Editor
Item Properties
Text Item Properties

Introduction to Triggers
Adding Functionality With Triggers
Trigger Events
WHEN Triggers
ON Triggers
PRE Triggers
Post Triggers
KEY Triggers
Trigger Text
Creating a Trigger
Smart Triggers
Using a Trigger for Validation

Program Units
Built-in Program Units
Restricted and Unrestricted Built-ins
Trigger Events
Types of Built-ins
Failure Of Built-ins
PL/SQL Program Units
Benefits of user-named routines
Types of Program Units
Procedures
Functions
Packages
Creating a Form Level Program Unit
The PL/SQL Editor
Compiling PL/SQL

Check Boxes Radio Groups And List Items


Common Characteristics
Setting The Item Contents
Handling Null Values
Other Values
Non Base Table Items
Common Properties
Radio Groups
List Item
List Item Trigger Events
Check Box
Check Box Built-ins

Other Item Types


Other Item Types
Display Items
Calculated Items
Image Items
Properties
Trigger Events
Built-ins
Button Items
Properties
Trigger Events
Chart Items
Hierarchical Trees

Visual Attributes
Visual Attributes
Applying visual attributes
Types of Visual Attribute
Default Visual Attributes
Named Visual Attributes
Custom Visual Attributes
Mouse Events
Mouse Trigger Events
Mouse Event System Variables
Creating a Right Mouse Menu
Tooltips

Relations
Relations
Properties
Delete Behaviour
Query Behaviour

Alerts and Editors


Alerts
Creating An Alert
Properties
Displaying the Alert
Editors
Creating An Editor
Properties
Attaching an Editor to an Item
Invoking an Editor

Lists of Values
Lists of values
List of Values Structure
Creating a List of Values Manually
Using the LOV Wizard
Properties
Displaying the List of values

Record Groups
Record Groups
Creating Record Groups
Creating Record Groups at Design Time
Creating Record Groups Programmatically
Reading the Values in a Record Group
Windows and Canvases
Windows
Creating Additional Windows
Windows Properties
Canvases
Views
Content Canvases
Stacked Canvases
Toolbar Canvases
Canvas-View Properties
Displaying A Canvas
Windows Trigger Events
Windows Built-Ins
Canvas-View Built-Ins
Tab Canvases
Tab Pages
Tab Triggers and Built-Ins

Transaction Processing and Triggers


Transactions
Locking
Triggers At Commit Time
Client Server Issues
Array DML

Advanced Data Block Properties


Alternative Data Sources
Procedures
Views
From Clause Queries
Object support
Using Object REFS
Creating items from LOBs

More Trigger Events


Navigation Triggers
WHEN-NEW-INSTANCE Triggers
Trigger Firing Order
Query Triggers
Handling Messages

Determining Form Properties


System Variables
Read Only System Variables
Getting and Setting Properties
Timers
Creating a Timer
Altering a Timer
Deleting a Timer

Integrating Multiple Forms Modules in an Application


Designing a Forms Application
Invoking Forms From Forms
OPEN_FORM
CALL_FORM
NEW_FORM
Passing Information Between Forms Modules
Global Variables
Parameter Lists

Forms Architecture and Java


Architecture
Running a Form
Web Forms Styles
MDI Window
Frames
Look and Feel
Colour Scheme
Splash Screen
The Java Importer
Pluggable Java Components
Replacing the Forms Interface Item
Creating a Bean Area
Manipulating the Bean Area
Tracing a form
Using webutil

Integrating Forms with Reports


Invoking Reports
RUN_REPORT_OBJECT

PL/SQL Library Modules


Creating a PL/SQL Module
Saving and Generating
Attaching a Library to a Form or Menu Module
Maintaining a Library Module
Executing a Program Unit From a Library
PL/SQL Code in Libraries
Managing Application Development
Features for Managing Application Development
Server Program Units
Object Libraries
Smart Classes
Object Groups
Property Classes
Creating a Property Class
Guidelines for Development

Menu Modules
Menu Modules
Menu Commands
Menu Item Types
Creating Menus
Displaying Menu Items as Buttons
The Menu Editor
Saving and Generating
Attaching a Menu Module to a Form
Built-ins for Menus
Oracle Reports Workshop 10G - 4 Days

This course is designed for developers who will be designing or building applications
using Oracle Reports. This is a practical course in which the student builds a series of
reports ranging from simple to complex. This course is also available for versions 6i and
9i of the product.

A knowledge of SQL is required.


A knowledge of PL/SQL is desirable.

Product Overview
Oracle Developer
Development and Runtime Environment
Users of Oracle Reports
Features
Object Structure
Using a Three Tier Architecture

The User Interface


Invoking Oracle Reports as a User
Destination of the Report
Running a Report
Viewing Reports in a Browser

The Designer Interface


Invoking Oracle Reports as a Designer
The Menu Structure
The Editors
The Property Palette
Preferences

Storage
Saving Reports
Generating Reports
Converting Reports

Building a Paper Report


Design Issues
The Report Wizard
The Basic Steps
Basic Objects
Report Level Properties
The Live Previewer
The Data Model Editor
The Tool Palette
The Data Wizard
Pluggable Data Sources
Creating a Query
Importing a Query
Default Groups
Columns
Groups

Other Query Types


Creating an External Query
An External Query in a Report
Changing an External Query
Removing a Reference to an External Query
Creating a Ref Cursor Query

Columns
Creating Columns
Database Columns
Formula Columns
Placeholder Columns
Summary Columns

Multiple Queries and Links


Report Structures with Multiple Queries
Defining Links

The Paper Layout - Basic Objects


Purpose of the Layout Editor
The Report Wizard
Report Sections
Creating Objects
Modifying Object Properties
Manipulating Objects
Hints on Using the Layout Editor
Boilerplate Objects
Colour and Pattern
Repeating Frames
Frames
Fields
Anchors
Dates and Page Numbers
Standard Layouts
Report Wizard layouts
Default Layout Structures
Manipulating Reports in the Live Previewer

General Paper Layout Properties


Page Breaking
Horizontal and Vertical Elasticity
Conditional Formatting
Frame Properties
Repeating Frame Properties
Field Properties
Boilerplate Objects
Anchor Properties

Advanced Paper Layout Properties


Format Triggers
Printer Codes
Print Conditions
Report Templates
The Template Editor
Default Template Attributes
Override Template Attributes

Web Reports
Creating a Web Report
Report tags
Adding a Report Block
Modifying a Web Report

Displaying Files, Images and Charts


Methods of Displaying Files and Images
Imported Boilerplate
External Boilerplate
File Columns
Long Columns
The Chart Wizard
Large Objects

Matrices
Creating the Data Model
Data Model of a Simple Matrix
Layout Model of a Simple Matrix
Matrix Break Report
Nested Matrix Report
Summaries
Parameters
Report Parameters
System Parameters
Parameters Created at Design Time
Supplying Parameter Values
Validation Triggers
The Parameter Form
The Parameter Form Builder
Providing Lists of Values

PL/SQL in Reports
Where PL/SQL can be Used in Reports
Using a Ref Cursor
External PL/SQL Libraries
Triggers
Packaged Program Units

Report Templates
Creating Templates
Report Body Objects
Inherited Properties
Standard Templates

Publishing Reports on the Web


Other Output
Rich Text Format
Delimited Text File
XML output
Report Submission
Event Driven Report Submission
Report Distribution
XML Report Definitions
XML Runtime Customisation
Oracle 10g - Database Administration Workshop - 5
Days

This course is designed for Database Administrators. It covers the architecture of the
Oracle 10g server, and the procedures required to effectively administrate the database.
The course provides a series of practical workshops in which the students can practice
the database administration techniques they have learnt.

Some experience of SQL is an advantage.

Oracle 10g Overview


Introduction
Oracle 10g Product Structure

Oracle 10g Architecture


Oracle 10g Features
The Database and Instance
Memory Areas
Processes
Checkpoints

Database Creation
Defining the Database Directory Structures
The Initialisation Parameter File
Using a Server Parameter File
Setting the Instance Identifier
The Create Database Command
Additional Scripts
Creating the Database
Initialisation Parameters
Oracle Managed Files

Startup and Shutdown and Oracle Database


Startup a Database
Shutdown a Database
The Alter Database Command
Quiescing a Database
Suspending a Database
Oracle Enterprise manager
Introduction
Grid Control
Starting the Management Console
Accessing the Management Console
Navigating
The Administration Page
The Maintenance Page
The Performance Page
Performing Administration with Oracle Enterprise Manager
Performing Administration with Oracle Enterprise Manager
Start Up and Shut Down
Managing Initialisation Parameters
Setting Preferences
Database Cloning

Database Structure
Creating Additional Control Files
Tablespaces
Types of Tablespaces
Block Sizes
Recommended Tablespaces
Locally Managed Tablespaces
Segments
The Data Dictionary

Managing Tablespaces
The Create Tablespace Command
The Create Temporary Tablespace Command
The Alter Tablespace Command
The Drop Tablespace Command
Enlarging And Reducing A Tablespace
Tablespace Information in the Data Dictionary
Managing Data Files
Renaming Data Files Within A Tablespac
Making a Tablespace Read Only
Making a Tablespace Read Write
Transportable Tablespaces
Oracle Managed Files

Managing Redo Log Groups and Members


Redo Log Files
Mirrored Redo Log Files
Redo Log Group
Redo Logo Member
Redo Log Failure
Mirrored Redo Logs – Syntax
Corruption Of Redo Log Blocks
Clearing A Redo Log
Database Storage
Extents
Blocks
Structure of an Oracle Block
Performance Implications
The Storage Clause
Monitoring Object Storage
Allocation Of Space To Segments

Managing Undo
What is Undo?
Different Types of Rollback Segment
Manual versus Automatic Undo Management
Transactions
Savepoints
The Commit and Rollback Commands
How Undo Segments Work
Read Consistency over Multiple Statements
Configuring Automatic Undo Management
Creating a Rollback Segment
Altering a Rollback Segment
Dropping a Rollback Segment
Data Dictionary Information

Security
Creating, Altering, and Dropping Users
Privileges
System Privileges
Object Privileges
Roles
Profiles
Sessions
Data Dictionary Information
Password management

Optimisation
Access Paths
Cost Based Optimisation
Initialisation Parameters
Managing Statistics
The DBMS_STATS package
SQL Tuning Advisor
SQL Profile

Database Tuning
Targets for Tuning
Automatic Workload Repository
Automatic Database Diagnostic Monitor (ADDM)
SQL Tuning Sets
SQL Tuning Sets
SQL Access Advisor
Tuning using Wait Events
Server Alerts

The Multi Threaded Server


Introduction
Multi Threaded Server Architecture
Tune the Multi Threaded Server

Backup and Recovery


Backup Strategy
Instance Failure
Full Offline Backups (No Archiving)
Full Offline Backups (With Archiving)
Enabling Archivelog Mode
Archiving
The Recovery Process
Online Backups With Archiving
Control File Backups
Log File Backups
Read Only Tablespaces
Control Files
Point in Time Tablespace Recovery
The Recovery Manager
Flash Recovery Area
Backup Settings
Device Page
Backup Set Page
Policy Page
Performing a Backup
Validating the Backups
Performing a Recovery

Data Pump
Data Pump Import and Export
Data Pump v Export/Import
API
Command Line
Using Data Pump Export
Useful Parameters
Estimating the Size of the Files
Filtering
Monitoring Data Pump Jobs
Using Data Pump Import
Useful Parameters
Estimating the Size of the Files
Filtering
Monitoring Data Pump Jobs
Oracle 9i - Database Administration Workshop - 5 Days

This course is designed for Database Administrators. It covers the architecture of the
Oracle 9i server, and the procedures required to effectively administrate the database.
The course provides a series of practical workshops in which the students can practice
the database administration techniques they have learnt.

Some experience of SQL is an advantage.

Oracle 9i Overview
Introduction
Oracle 9i Product Structure

Oracle 9i Architecture
Oracle 9i Features
The Database and Instance
Memory Areas
Processes
Checkpoints

Database Creation
Defining the Database Directory Structures
The Initialisation Parameter File
Using a Server Parameter File
Setting the Instance Identifier
The Create Database Command
Additional Scripts
Creating the Database
Initialisation Parameters
Oracle Managed Files

Startup and Shutdown and Oracle Database


Startup a Database
Shutdown a Database
The Alter Database Command
Quiescing a Database
Suspending a Database
Database Structure
Creating Additional Control Files
Tablespaces
Types of Tablespaces
Block Sizes
Recommended Tablespaces
Locally Managed Tablespaces
Segments
The Data Dictionary

Managing Tablespaces
The Create Tablespace Command
The Create Temporary Tablespace Command
The Alter Tablespace Command
The Drop Tablespace Command
Tablespace Information in the Data Dictionary
Managing Data Files
Transportable Tablespaces

Managing Redo Log Groups and Members


Redo Log Files
Mirrored Redo Log Files
Redo Log Group
Redo Logo Member
Redo Log Failure
Mirrored Redo Logs - Syntax

Database Storage
Extents
Blocks
Structure of an Oracle Block
Row Chaining and Row Migration
Performance Implications
The Storage Clause
Monitoring Object Storage

Managing Rollback Segments


What is a Rollback Segment?
Different Types of Rollback Segment
Manual versus Automatic Undo Management
Transactions
Savepoints
The Commit and Rollback Commands
How Rollback Segments Work
Read Consistency over Multiple Statements
Configuring Automatic Undo Management
Creating a Rollback Segment
Altering a Rollback Segment
Dropping a Rollback Segment
Data Dictionary Information
Security
Creating, Altering, and Dropping Users
Privileges
System Privileges
Object Privileges
Roles
Profiles
Data Dictionary Information
Password management

Optimisation
Access Paths
Rule Based Optimisation
Cost Based Optimisation
Defining The Optimisation Method
The ANALYZE Command
The DBMS_STATS package

Database Tuning
Targets for Tuning
Tuning Memory Use
Tuning I/O
Tuning Contention for Resources

The Multi Threaded Server


Introduction
Multi Threaded Server Architecture
Tune the Multi Threaded Server

Backup and Recovery


Backup Strategy
Instance Failure
Full Offline Backups (No Archiving)
Full Offline Backups (With Archiving)
Enabling Archivelog Mode
Archiving
The Recovery Process
Online Backups With Archiving
Control File Backups
Log File Backups
Read Only Tablespaces
Control Files
Export and Import
Full Export
User Export
Table Export
Invoking the Export Utility
Export Parameters
The Import Utility
Invoking the Import Utility
Import Parameters
Export as a Supplement to Backup
Recovery from a Full Export
Recovery of an Application from a User Export
Incremental Exports
Reorganising the Database Using Export and Import
Application Tuning Workshop 11g - 3 Days

This course is designed for Designers, Developers, and Database Administrators, and
examines all aspects of tuning SQL statements and applications.

A sound knowledge of SQL and PL/SQL is required.

Defining a Tuning Methodology


Introduction
Tuning Aims
Where to Start
When to Tune

Diagnostic Tools
Explain Plan
Tracing SQL Statements
The TKPROF Utility
Autotrace
Using the V$tables

Processing an SQL Statement


Phases of SQL Processing
The Shared SQL Area
Evaluation of Expressions
Transformation of Statements
Recursive SQL
Access Paths

Indexes
Index Structure
Creating Indexes
Concatenated Indexes
Reverse Key Indexes
Index Compression
Function Based Indexes
Invisible indexes
Recommendations on Indexing
Cost Based Optimisation
Evaluating an Access Path
Using Histograms
Adaptive cursors
Using Hints
Joins
Subqueries
Techniques for Tuning SQL with Cost Based Optimisation

Gathering Statistics
DBMS_STATS
Collecting Statistics
Manipulating statistics
Publishing statistics
Extended statistics

Stored Outlines
Purpose
Creating stored outlines
Using stored outlines

Storage Parameters
Allocation of Space to Objects
Space Usage Within a Block
Detecting Chaining
Distributing I/O

Hash Clusters and Index Clusters


Creating Index Clusters
Estimating Storage for Index Clusters
Accessing Data in Index Clusters
Creating Hash Clusters
Estimating Storage for Hash Clusters
Recommendations on the Use of Hash Clusters

Optimising PL/SQL
The Execution of PL/SQL
Implicit Cursors
Explicit Cursors
Using Cursor Loops
Bulk Binds
PL/SQL Inlining Optimisation
Native Compilation

Optimising Applications through Stored Procedures and Packages


Reducing Network Traffic using Server Program Units
Creating Procedures and Functions
Using Packages
Using Stored Functions in SQL
Memory Use and Stored Procedures
Packages and the Shared SQL Area
Methods for Implementing Business Rules

Using the Results Cache


SQL Results cache
PL/SQL Results cache
Managing dependency

Data Design for Performance


Denormalisation of Data
Maintaining Derived Data
Implications of Data Types
Subtypes
Arcs
Index organised tables

Tuning Tips
Sort Operation
Tuning Index Creation
Tuning Memory Use
The Array Interface
The Use of Views
Using Sequences
Initialisation Parameters that Affect Tuning

Partitions
Partitions, Range Partitions & Hash Partitions
Combined Partitioning
Partition Indexes
Global Temporary Tables

Optimise using Parallelisation


Operations that can be Parallelised
Determining the Degree
Sort Operations
Creating Indexes in Parallel
Parameters for Tuning Parallelisation
Monitoring Parallelisation

Tuning Tools
ADDM
SQL Tuning Advisor
Automatic tuning
SQL Profile
SQL Tuning Sets
SQL Access Advisor
Database Replay
Application Tuning Workshop 10g - 3 Days

This course is designed for Designers, Developers, and Database Administrators, and
examines all aspects of tuning SQL statements and applications.

A sound knowledge of SQL and PL/SQL is required.

Courses are also available for Oracle 9i

Defining a Tuning Methodology


Introduction
Tuning Aims
Where to Start
When to Tune

Diagnostic Tools
Explain Plan
Tracing SQL Statements
The TKPROF Utility
Autotrace

Processing an SQL Statement


Phases of SQL Processing
The Shared SQL Area
Evaluation of Expressions
Transformation of Statements
Recursive SQL
Access Paths

Indexes
Index Structure
Creating Indexes
Concatenated Indexes
Reverse Key Indexes
Index Compression
Function Based Indexes
Recommendations on Indexing
Cost Based Optimisation
Evaluating an Access Path
Using Histograms
Using Hints
Joins
Subqueries
Techniques for Tuning SQL with Cost Based Optimisation

Gathering Statistics
DBMS_STATS
Collecting Statistics
Manipulating statistics

Stored Outlines
Purpose
Creating stored outlines
Using stored outlines

Storage Parameters
Allocation of Space to Objects
Space Usage Within a Block
Detecting Chaining
Distributing I/O

Hash Clusters and Index Clusters


Creating Index Clusters
Estimating Storage for Index Clusters
Accessing Data in Index Clusters
Creating Hash Clusters
Estimating Storage for Hash Clusters
Recommendations on the Use of Hash Clusters

Optimising PL/SQL
The Execution of PL/SQL
Implicit Cursors
Explicit Cursors
Using Cursor Loops
Native Compilation
Bulk Binds

Optimising Applications through Stored Procedures and Packages


Reducing Network Traffic using Server Program Units
Creating Procedures and Functions
Using Packages
Using Stored Functions in SQL
Memory Use and Stored Procedures
Packages and the Shared SQL Area
Methods for Implementing Business Rules
Data Design for Performance
Denormalisation of Data
Maintaining Derived Data
Implications of Data Types
Subtypes
Arcs
Index organised tables

Tuning Tips
Sort Operation
Tuning Index Creation
Tuning Memory Use
The Array Interface
The Use of Views
Using Sequences
Initialisation Parameters that Affect Tuning

Partitions
Partitions
Range Partitions
Hash Partitions
Combined Partitioning
Partition Indexes
Global Temporary Tables

Optimise using Parallelisation


Operations that can be Parallelised
Determining the Degree
Sort Operations
Creating Indexes in Parallel
Parameters for Tuning Parallelisation
Monitoring Parallelisation

Tuning Tools
ADDM
SQL Tuning Advisor
SQL Profile
SQL Tuning Sets
SQL Access Advisor
Oracle Discoverer Workshop - 2 Days

This course is designed for End Users and examines all aspects of using the latest
versions of Oracle Discoverer. Both the web and client server interfaces are covered.

Oracle Discoverer Overview


Discoverer Environments
Oracle Discoverer Plus
Database Tier
Structure of the End User Layer
Users of Discoverer
Concepts
Features

Working with Discoverer


Invoking Oracle Discoverer
Display Formats
Opening an Existing Workbook
Closing a Workbook
Viewing Result in a Workbook
Selecting Parts of a Worksheet
Changing the Values of Paging Items
OracleBI Discoverer Plus Interface
OracleBI Discoverer Viewer Interface
Positioning Data Items
Customising the Worksheet
Saving Workbooks
Deleting Workbooks
Ending an Oracle Discoverer Session
Customising the Discoverer Plus Interface

Discoverer Workbooks
Structure of a Workbook
The Workbook Wizard
Running the Query
Viewing The SQL
Managing Workbooks

Worksheets and Conditions


Managing Worksheets
Adding Selection Criteria
Subqueries
Advanced Conditions
Parameters
Discoverer Plus Features

Performing Analysis - Calculations and Drilling


Adding Calculations
Defining Calculations Using Functions
Analytical Functions
Drilling Techniques
Drilling in a Worksheet
Drilling to a Link

Totals, Exceptions, Printing and Exporting


Creating Totals
Conditional Formats
StopLight Formatting
Viewing Data in External Applications
Printing Query Results
Previewing Your Document
Exporting Query Results

Customising Workbooks and Worksheets


Managing Workbooks
Adding Text
Customising the Worksheet Appearance
Changing Fonts, Formats, and Alignment of Data Items
Visual Elements of the Worksheet
Customising Query Behaviour

Displaying Data Graphically


Displaying Data as a Graph
Selecting a Graph Style
Location of the Graph
Customising the Appearance of the Graph
Using the Graph Toolbar

Scheduling and Administration


Scheduling
The End User Layer
Business Areas
Granting Access
Item Properties
Item Classes
Joins
Calculated Items
Conditions
Hierarchies
Managing Folders
Importing Database Functions
Refreshing the EUL
Managing Scheduled Workbooks
Oracle End User Workshop - 2 Days

This course is designed for End Users who require a knowledge of SQL to query the
Oracle database. It commences with a description of relational concepts and continues
with coverage of the SQL statements required to access information from one or more
Oracle Tables. Some basic formatting is also covered.

The course requires no prior knowledge of Oracle.

The Relational Model


Characteristics of the Relational Model
Components of the Relational Model
Overview of Oracle Data Types

Structured Query Language


Structure And Standards
The SELECT Statement
Column Alias
Ordering the Data

SQL*Plus
Where is SQL*Plus Used?
Some SQL*Plus Commands
Writing SQL*Plus
Editing SQL*Plus through the Buffer

Oracle SQL Developer


Introdution to SQL Developer
The SQL developer Interface
Browsing Database Objects
Entering SQL

More About SELECT


Concatenation
Null Values
Wildcards
Bounded Ranges
Distinct Values
The IN Clause

Substitution Variables
Defining a Substitution Variable
Assigning Parameter Values Interactively
Assigning Using DEFINE
Assigning Using ACCEPT
Using SQL*Plus for Formatting Output
Spooling your Output to a File
Creating a Report Title
Session Options
Formatting Columns
More on Formatting - the Body of the Report
Displaying more Information in the Title
Displaying Summary Fields

Functions
Date Functions
Character Functions
Number Functions
All Data Types
Nested Functions
Joins
Foreign Keys
Select Statements With Join Conditions
Using a Table Alias
Self Joins
Outer Joins

Group Functions
Common Group Functions
The Group By Statement
Application Design Workshop - 3 Days

This course is designed for Developers, Designers, and Database Administrators, and
examines all aspects of the design of Oracle applications. A number of factors have
increased the complexity of design of Oracle applications, including the introduction of
two and three tiered configurations, the ability to enforce many of the business rules
within the server, and the increasing quantities of data which must be stored. The
course covers design issues such as application partitioning, and table and index design
both for performance and for ease of maintenance. It provides recommendations for
application design that will ensure that development can be performed in a productive
environment while avoiding many of the common problems experienced during the
build, implementation and phases.

A sound knowledge of SQL and PL/SQL is required.

Data Design
Initial Data Design
Using Constraints
Surrogate Keys
Using the Right Data Types
Handling LONG values

Refining The Data Design


Data Design for Performance
Techniques for Denormalisation
The Population of Derived Values
Designing to Support The Functional Requirements
Using Views

Handling Large Objects


Differences Between LOBS and LONGS
Differences Between CLOBS, BLOBS and BFILES
Storage of BFILES
Storage of CLOBS and BLOBS
Creating BFILES
Manipulating BFILES
Creating BLOBS and CLOBS
Manipulating LOBS

Index Design
Advantages and Disadvantages of Indexing
Concatenated Indexes
Bit Mapped Indexes
Reverse Key Indexes
Index Organised Tables
Designing to Avoid Common Performance Problems
Indexing Recommendations

Clustering
Using Hash Clusters
Using Index Clusters
Manual Clustering

Coding Standards
Coding for Performance
Coding for Maintainability
Naming Standards

Enforcing Business Rules


Server Functionality
Client Functionality
Three tier Architecture
Efficient Application Partitioning

Implementing Server Functionality


Using Procedures and Functions
Writing Generic Code
Designing Packages
PL/SQL Standards
Using an Object Approach
Triggers
Handling Trigger Restrictions

Implementing Client Functionality


Business Rules in the Client
Developing Interface Standards
Client Libraries

Oracle Forms
Template Forms and Object Libraries
Designing for Maintenance
Implementing Standard Interfaces
Coding Standards

Oracle Reports
Template Reports
Designing for Maintenance
Flexible Reporting
Coding Standards

Techniques For Generic Design


Managing Reference Data
Utility Tables
Dynamic SQL
Generic Reporting

Security
Designing a Strategy For Security
Using Database Roles
Menu Roles
Using Packages For Security

Using Oracle Designer


Design Features in Oracle Designer
Managing Database Design
Managing Server Program Units
Application Maintenance

Data Warehouse Design


Data Design
Indexing
Warehouse Population
Reporting

Designing Large Systems


Features of Large System Design
Data Design
Parallelisation
Designing Large Processes
Tuning and Troubleshooting Your Oracle
Database - 2 Days

This course is designed for Database Administrators. It covers techniques for tuning an
Oracle database for optimum performance, and includes methods for the diagnosis of
performance problems and their resolution. The course also provides information and
practical experience on monitoring a database and identifying and managing common
administrative problems.

A sound knowledge of SQL is required.


Knowledge of Oracle database architecture administration is required.

Defining a Tuning Methodology


Approach to Tuning
Targets for Tuning
Applying a Tuning Methodology
Tuning Utilities
Using the V$views

Identifying Application Tuning Problems


Trace event 10046
Trace event 10053
V$tables

Database Tuning using Oracle Enterpris Manager


Targets for Tuning
Automatic Workload Repository
Automatic Database Diagnostic Monitor (ADDM)
SQL Tuning Sets
SQL Tuning Sets
SQL Access Advisor
Tuning using Wait Events
Server Alerts

Tuning Memory Usage


Components
Configuring The System Global Area
Configuring Process Memory
Automatic management of the SGA

Tuning The Shared Pool


Identifying Contention for The Shared Pool
Tuning the Shared Pool
Guidelines on Designing Program Units for Performance
Managing Fragmentation of the Shared Pool

Tuning The Buffer Cache


Identifying Contention for The Buffer Pool
Tuning the Buffer Pool
Allocating Multiple Buffer Pools
Tuning use of the LRU List

Tuning Redo Logs


Identifying Problems
Tuning the Log Buffer
Tuning Redo Latches
Tuning Checkpoints
Tuning Archiving

Tuning I/O
Monitoring File I/O
Distribution of Files
Use of Striping Techniques

Tuning Storage Mechanisms


Storage Clauses
Monitoring Storage
Block Usage
Managing Index Storage
Avoiding Fragmentation

Tuning Using Wait Events


Identifying Wait Events
Common Wait Events

Tuning Undo Segments


Manual undo management
Automatic Undo Management

Tuning Sorts
Sorting Mechanisms
Monitoring Sorts
Tuning Sorts
Tuning Temporary Segments
Direct Write Sorts

Locking
Locking Modes
Monitoring Locks
Deadlocks

Multi Threaded Server


Monitoring the MTS
Tuning the MTS

Monitoring The Database


Common Monitoring Routines
Monitoring Space Usage
Monitoring Users
Gathering Statistics

Common Database Problems


Storage Problems
Problems on Startup
Problems with Archiving
Using the Alert Log
Identifying Trace Files

Monitoring The Database


Common Monitoring Routines
Monitoring Space Usage
Monitoring Users
Gathering Statistics

Common Database Problems


Storage Problems
Problems on Startup
Problems with Archiving
Using the Alert Log
Identifying Trace Files
Oracle Designer
Analysis and Design Workshop V10g - 5 days

This course is designed for analysts and designers who will be using Oracle in systems
development. It covers the use of all of the major analysis modelling tools. The
workshop is based around a small application for which analysis information is recorded.
The course also covers the use of the analysis information to produce a data model.

No previous experience is required, although some experience of analysis techniques is


preferred.

The course is also available in version 9i

Managing the Repository


The Structure of the Designer Products
Controlling User Access
Backup and Migration
Managing Applications
Designer Interface

Management of Designer Objects


Workareas
Containers
Versioning
Configurations

The Repository Object Navigator


Creating and Deleting Objects
Manipulating Objects
Adding Text

The Entity Relationship Modeller


Building an Entity Model
Standards
Entities
Relationships
Subtypes
Arcs
Setting Preferences
Layout of the Model
Adding Detail to the Entity Relationship Model
Domains
Attributes
Unique Identifier

The Function Hierarchy Diagrammer


Building a Function Hierarchy
Common Functions
Layout of the Diagram

Creating Detailed Function Specifications


Elementary Functions
Detailed Function Definitions

Function Entity Usages


Defining Function Entity Usages
Function Attribute Usages

The Dataflow Diagrammer


Building a Diagram
Context Level Diagrams
Detailed Diagrams

The Matrix Diagrammer


The Matrix Modeller for Data Entry
Commonly Used Matrices
Function / Entity Matrices
Completeness Checking

Reporting and Quality Checking


Producing Analysis Reports
Quality Checking the Models

The Database Design Transformer


Mapping Entities to Tables
Design Issues
Creating a Default Database Design
Maintaining a Database Design

The Design Editor


Design Phase Tools
Invoking The Design Navigator
The Design Navigator
Displaying Properties
The Property Palette
The Property Dialog
Server Model Diagrams
Creating a Diagram
Detailed Database Design Information
Distributed Database Design
Columns
Views
Constraints

Database Design Reports


Producing Data Design Reports
Quality Checking the Models

Design Capture and Reconciliation


capturing Database Objects
Creating an Entity Relationship Model from Data Definitions
Reconciliation with the Database
Oracle Designer
Design and Generation V10g Workshop - 5 days

This course is designed for developers who will be using Oracle Designer version 6 to
generate systems. It covers application design and the detailed use of the generators to
build systems that are easy to maintain. Emphasis is placed on developing standards
for the use of the product.

No previous experience is required, although some experience of the Oracle Developer


tools is preferable.

Note that a course covering Designer version 10g is also available.

The Repository Object Navigator


Creating and Deleting Design Objects
Manipulating Design Objects
Adding Text

Application Design
The Application Transformer
Modifying the Application Design
Module Types

The Design Editor


Design Phase Tools
Invoking The Design Navigator
The Design Navigator
Displaying Properties
The Property Palette
The Property Dialog

Module Diagrams
Base Table Usages
Look Up Usages
Column Usages
Module Diagram Views
Displaying a Module Diagram
Elements of a Module
Module Networks
Menu Design
Additional Module Features
Reusable Components
Wizards
Module Application Guide

Detailed Module Definitions


Adding Constraints
Defining Procedures
Defining Packages
The Logic Editor

Triggers
Adding Triggers to Tables

Generating Server Objects


Tables
Views
Packages,
Procedures, Functions, and Triggers
The Database Navigator

Preferences
Setting Preferences
Preference Levels
Preference Sets

The Forms Generator


The Generation Process
Information Used in Generation

Forms Visual Layout


Layout Preferences
The effects of Templates and Object Libraries
Item Groups
Layout Options
Windows and Canvases
Blocks and Items

Using Forms Templates


Template Objects
Object Libraries
Standards
Client Libraries
Validation and Constraints
Primary and Foreign Key Rules
Implicit Lookups
Complex Validation
Lists of Values
Reference Codes
Context Sensitive Help

Table and Column Usages and Generation


Bound Items & Unbound Items
Action Items
Autogenerated Values

Advanced Generation
Alternative Block Data Sources
Using Table and module APIs
Form Navigation

Application Logic
Client Libraries
Adding Application Logic
Server Logic

Generating Reports
The Generation Process
Report Styles
Report Preferences

Using Reports Templates


Report Layout
Template Objects
Standards

Report Parameters
Parameter Form Templates
Defining Parameters
Validation
Lists of Values

Generating Menus
Generation Level
Menu Templates
Security

Application Design for Maintenance


Application Structure
Maintaining Generated Code
Regeneration
Modification of Generated Code
Oracle Portal Workshop - 3 Days

The course is designed to provide the student with the knowledge and skills required to
build corporate portals. The course covers the use of Oracle Portal for content
management and includes recommendations and guidelines on the classification and
searching of content. The standardisation and customisation of the Portal interface and
styles are described. The workshop includes the use of Portal to create simple
application components such as forms, reports and graphs. Finally the security
management of a corporate portal is considered.

No previous experience is required.

Product Overview
What is Oracle Portal?
Oracle Internet Application Server Features
Component Products
Product Features
Concepts
Page Groups
The Portal User Interface
The Portal Development Interface
The Database Objects Tab

Page Groups and Pages


Page Groups
Creating Pages
Editing a page
Regions
Portlets
URL Pages
PL/SQL Pages

Useful Portlets
Generic Page Portlet
Web Clipping
OmniPortlet
Survey
HTML Portlet
Simple Parameter Form
Sub Page Links

Styles, Navigation Bars and Templates


Controlling the Page User Interface
Styles
Navigation Pages
Page Templates
HTML templates

Item Regions and Classification


Item Regions
Creating an HTML Content Layout
Items
Managing Items
Content Management Event Framework
Classification
Categories
Perspectives
Planning Content
Classifying Items
Searching the Portal
WebDAV
Managing Approval
Managing Versions

Custom Types, Parameters and Events


Custom Types
Page Parameters
Events

Application Components - Forms


Providers
Application Components
Creating a Portal DB Provider
Forms
Enhancing the Form
Master-Detail Form

Application Components - Reports


Creating a Report Component
Running the Report
Example of a Simple Report
Repor\t From Query Wizard
The Customization Form
Report From SQL Query
Custom Layouts

Shared Components
Shared Component Types
Colours
Fonts
Images
Javascripts
User Interface Templates
Other Components
Menus
Dynamic Pages
Lists of Values
Links
Frame Drivers
Charts
Calendars
Hierarchies
XML Components
URL
Data Component

Security
Security
Users
User Profiles
Creating a Group
Group Profiles
Object Privileges
Provider Security
Portlet Security
URLS
Advanced Oracle Portal Workshop - 1 Day

The course is designed to provide the student with the knowledge and skills required to
build custom portlets. The course describes the provider and portlet structure and the
integration and management of custom portlets within the product. The attendee builds
a simple provider and its custom portlets based on an example. The course focuses on
PL/SQL portlets to demonstrate the techniques required, but also covers web portlets.
Detailed coverage of the Portal API and its use, not only in custom portlets, but to
enhance other Portal components is included.

Attendees should have attended the Oracle Portal Workshop or have significant
experience of Oracle Portal.

PL/SQL experience is required.

Basic HTML and Java skills are an advantage.

Programmable Portlets - Concepts


Portlets
The Provider
The Portal PL/SQL API
The PDK

PL/SQL Providers
Access Privileges
Creating a Database Provider
The Provider Record
The Provider Package
Provider Packages/Functions

PL/SQL Portlets
Portlet Records
The Portlet Package
Registering the Provider
Refreshing the Portal Repository
Using the API to Register a Provider

API Services – Session Storage


Portal Framework Services
Session Storage
Session Context
Preference Storage

API Services – Other Utilities


Activity Logging
Error Logging
The NLS API
Security API Packages
Portlet User Interface Packages
Form Component Packages
Component Session Storage

Web Providers
Web Providers v Database Providers
The Portal Development Kit (PDK)
The JPDK
Example Servlet Portlet
Registering a Web Provider
Partner Applications
External Applications
Oracle Portal Overview Workshop - 1 Day

The course is designed to provide the student with the knowledge and skills required to
effectively use a portal built with the Oracle Portal product. The course is designed for
non IT staff who will be utilising Portal to access content and applications, and who may
contribute content to the portal. The workshop familiarises the attendee with the Portal
interface and provides an understanding of its capabilities.
No previous experience is required.

Product Overview
What is Oracle Portal?
Concepts
Page Group
Pages
Portlets
The Portal User Interface
Personalisation
The Portal Development Interface

Content Management
Planning Content
Classifying Items
Categories
Perspectives
Keywords
Managing Items
Searching the Portal
More About Page Groups
Page Interface
Styles

Portlets and Portlet Providers


Portlet Providers
Application Components
Shared Components

Security
Users
Groups
Page Group Security
Page Security
Application Component Security

You might also like