ORA 201: Oracle SQL & PL/SQL Workshop

ORA 201: Oracle Database SQL & PL/SQL Workshop

Duration: 18 Hours
What you will learn
This Oracle Database: Introduction to SQL training helps you write subqueries, combine multiple queries into a single query using SET operators and report aggregated data using group functions. Introduce PL/SQL and then explores the benefits of this powerful programming language.
Learn To
Understand the basic concepts of relational databases ensure refined code by developers.
Create reports of sorted and restricted data.
Run data manipulation statements (DML).
Control database access to specific objects.
Manage schema objects.
Manage objects with data dictionary views.
Retrieve row and column data from tables.
Control privileges at the object and system level.
Create indexes and constraints; alter existing schema objects.

Conditionally control code flow (loops, control structures)

Create anonymous PL/SQL blocks, functions and procedures
Benefits to You
Ensure fast, reliable, secure and easy to manage performance. Optimize database workloads, lower IT costs and deliver a higher quality of service by enabling consolidation onto database clouds.

Learn Advanced Features of SQL
This course will help you understand the advanced features of SQL. Learning these features will help you query and manipulate data within the database, use the dictionary views to retrieve metadata and create reports about their schema objects. Some of the date-time functions available in the Oracle Database are also covered. This course also discusses how to use the regular expression support in SQL through expert instruction.

Use Development Tools

The main development tool used in this training is SQL*Plus. Oracle SQL Developer is available as an optional development tool. This is appropriate for a 10g, 11g and 12c audience.

Audience

Business Analysts
Data Warehouse Administrator
Developer
Forms Developer
PL/SQL Developer
System Analysts
Related Training
Required Prerequisites: DB 101

Course Objectives
Identify the major structural components of the Oracle Database
Create reports of aggregated data
Write SELECT statements that include queries
Retrieve row and column data from tables
Run data manipulation statements (DML) in Oracle Database
Create tables to store data
Utilize views to display data
Control database access to specific objects
Manage schema objects
Display data from multiple tables using the ANSI SQL 99 JOIN syntax
Manage objects with data dictionary views
Write multiple-column sub-queries
Employ SQL functions to retrieve customized data
Use scalar and correlated sub-queries
Create reports of sorted and restricted data

Use PL/SQL programming constructs and conditionally control code flow (loops, control structures, and explicit cursors)

Create and debug stored procedures and functions

Manage dependencies between PL/SQL subprograms

Handle runtime errors
Course Topics
Introduction to Oracle Database
List the features of Oracle Database
Discuss the basic design, theoretical, and physical aspects of a relational database
Categorize the different types of SQL statements
Describe the data set used by the course
Log on to the database using SQL Plus environment
Save queries to files and use script files in SQL Plus
Retrieve Data using the SQL SELECT Statement
List the capabilities of SQL SELECT statements
Generate a report of data from the output of a basic SELECT statement
Select All Columns
Select Specific Columns
Use Column Heading Defaults
Use Arithmetic Operators
Understand Operator Precedence
Learn the DESCRIBE command to display the table structure
Learn to Restrict and Sort Data
Write queries that contain a WHERE clause to limit the output retrieved
List the comparison operators and logical operators that are used in a WHERE clause
Describe the rules of precedence for comparison and logical operators
Use character string literals in the WHERE clause
Write queries that contain an ORDER BY clause to sort the output of a SELECT statement
Sort output in descending and ascending order
Usage of Single-Row Functions to Customize Output
Describe the differences between single row and multiple row functions
Manipulate strings with character function in the SELECT and WHERE clauses
Manipulate numbers with the ROUND, TRUNC, and MOD functions
Perform arithmetic with date data
Manipulate dates with the DATE functions
Invoke Conversion Functions and Conditional Expressions
Describe implicit and explicit data type conversion
Use the TO_CHAR, TO_NUMBER, and TO_DATE conversion functions
Nest multiple functions
Apply the NVL, NULLIF, and COALESCE functions to data
Use conditional IF THEN ELSE logic in a SELECT statement
Aggregate Data Using the Group Functions
Use the aggregation functions to produce meaningful reports
Divide the retrieved data in groups by using the GROUP BY clause
Exclude groups of data by using the HAVING clause
Display Data From Multiple Tables Using Joins
Write SELECT statements to access data from more than one table
View data that generally does not meet a join condition by using outer joins
Join a table to itself by using a self join
Use Sub-queries to Solve Queries
Describe the types of problem that sub-queries can solve
Define sub-queries
List the types of sub-queries
Write single-row and multiple-row sub-queries
The SET Operators
Describe the SET operators
Use a SET operator to combine multiple queries into a single query
Control the order of rows returned
Data Manipulation Statements
Describe each DML statement
Insert rows into a table
Change rows in a table by the UPDATE statement
Delete rows from a table with the DELETE statement
Save and discard changes with the COMMIT and ROLLBACK statements
Explain read consistency
Use of DDL Statements to Create and Manage Tables
Categorize the main database objects
Review the table structure
List the data types available for columns
Create a simple table
Decipher how constraints can be created at table creation
Describe how schema objects work
Other Schema Objects
Create a simple and complex view
Retrieve data from views
Create, maintain, and use sequences
Create and maintain indexes
Create private and public synonyms
Control User Access
Differentiate system privileges from object privileges
Create Users
Grant System Privileges
Create and Grant Privileges to a Role
Change Your Password
Grant Object Privileges
How to pass on privileges?
Revoke Object Privileges
Management of Schema Objects
Add, Modify, and Drop a Column
Add, Drop, and Defer a Constraint
How to enable and Disable a Constraint?
Create and Remove Indexes
Create a Function-Based Index
Perform Flashback Operations
Create an External Table by Using ORACLE_LOADER and by Using ORACLE_DATAPUMP
Query External Tables
Manage Objects with Data Dictionary Views
Explain the data dictionary
Use the Dictionary Views
USER_OBJECTS and ALL_OBJECTS Views
Table and Column Information
Query the dictionary views for constraint information
Query the dictionary views for view, sequence, index and synonym information
Add a comment to a table
Query the dictionary views for comment information
Manipulate Large Data Sets
Use Subqueries to Manipulate Data
Retrieve Data Using a Subquery as Source
Insert Using a Subquery as a Target
Usage of the WITH CHECK OPTION Keyword on DML Statements
List the types of Multitable INSERT Statements
Use Multitable INSERT Statements
Merge rows in a table
Track Changes in Data over a period of time
Retrieve Data Using Sub-queries
Multiple-Column Subqueries
Pairwise and Nonpairwise Comparison
Scalar Subquery Expressions
Solve problems with Correlated Subqueries
Update and Delete Rows Using Correlated Subqueries
The EXISTS and NOT EXISTS operators
Invoke the WITH clause
The Recursive WITH clause

Introduction to PL/SQL

Overview of PL/SQL

Identify the benefits of PL/SQL Subprograms

Overview of the types of PL/SQL blocks

Create a Simple Anonymous Block

How to generate output from a PL/SQL Block?

 

Declare PL/SQL Identifiers

  • Use variables to store data
  • Identify Scalar Data Types
  • The %TYPE Attribute

Write Executable Statements

  • Describe Basic PL/SQL Block Syntax Guidelines
  • Learn to Comment the Code
  • Deployment of SQL Functions in PL/SQL
  • How to convert Data Types?
  • Describe Nested Blocks
  • Identify the Operators in PL/SQL

Control Structures

  • Conditional processing using IF Statements
  • Conditional processing using CASE Statements
  • Describe simple Loop Statement
  • Describe While Loop Statement
  • Describe For Loop Statement
  • Use the Continue Statement

Composite Data Types

  • Use PL/SQL Records
  • The %ROWTYPE Attribute
  • Insert and Update with PL/SQL Records
  • INDEX BY Tables
  • Examine INDEX BY Table Methods
  • Use INDEX BY Table of Records

Explicit Cursors

  • What are Explicit Cursors?
  • Declare the Cursor
  • Open the Cursor
  • Fetch data from the Cursor
  • Close the Cursor
  • Cursor FOR loop
  • The %NOTFOUND and %ROWCOUNT Attributes
  • Describe the FOR UPDATE Clause and WHERE CURRENT Clause

Exception Handling

  • Understand Exceptions
  • Handle Exceptions with PL/SQL
  • Trap Predefined Oracle Server Errors
  • Trap Non-Predefined Oracle Server Errors
  • Trap User-Defined Exceptions
  • Propagate Exceptions
  • RAISE_APPLICATION_ERROR Procedure

Fuctions and Stored Procedures

  • Create a Modularized and Layered Subprogram Design
  • Modularize Development With PL/SQL Blocks
  • Understand the PL/SQL Execution Environment
  • List the benefits of using PL/SQL Subprograms
  • List the differences between Anonymous Blocks and Subprograms
  • Create, Call, and Remove Stored Procedures
  • Implement Procedures Parameters and Parameters Modes
  • View Procedure Information

Packages

  • Listing the advantages of Packages
  • Describe Packages
  • What are the components of a Package?
  • Develop a Package
  • How to enable visibility of a Package’s Components?
  • Create the Package Specification and Body using the SQL CREATE Statement and SQL Developer
  • Invoke the Package Constructs
  • View the PL/SQL Source Code using the Data Dictionary

Triggers

  • Describe Triggers
  • Identify the Trigger Event Types and Body
  • Business Application Scenarios for Implementing Triggers
  • Create DML Triggers using the CREATE TRIGGER Statement and SQL Developer
  • Identify the Trigger Event Types, Body, and Firing (Timing)
  • Differences between Statement Level Triggers and Row Level Triggers
  • Create Instead of and Disabled Triggers
  • How to Manage, Test and Remove Triggers?