Tailored to Needs

Call Us: 01225 339705 Email: This email address is being protected from spambots. You need JavaScript enabled to view it. Address: Verhoef Training, 11 Kingsmead Square, Bath, BA1 2AB

  • Register



Database application designers and database application programmers supporting DB2 stored procedures in Linux, UNIX or Windows environments will all benefit from attending this course.

This course is appropriate for those using DB2 in a z/Linux environment.



Delegates should have database application designer and database application programmer experience supporting DB2 stored procedures with the SQL database language. This prerequisite knowledge can be gained from prior experience or attending one of the following courses:



2 days.



This course is designed to provide database application designers with the knowledge to recognize when a stored procedure is the correct solution for an application. The development of stored procedures is taught using the SQL Procedural Language. This course exposes delegates to the IBM Optim Development Studio GUI tool to rapidly develop and test SQL stored procedures. In addition to using the GUI tool to develop and implement stored procedures, delegates are taught how to implement these SQL stored procedures using a text editor with the IBM DB2 Command Window and the Command Editor.

The course engages attendees in a series of lectures, each followed by a hands-on exercise to create and call SQL procedures using extensive process flows and cursor processing to return result sets to the invoking client or caller. Each exercise builds on the previous exercise and provide delegates with practical experience of condition handling, dynamic SQL, user-defined types, large objects, nested procedures, IBM Optim Development Studio debugging facility, SQL procedure tracing using sqlpltrc, security considerations and tuning and performance techniques.

Course objectives include:

  • Describe stored procedures.
  • List Intel platform requirements for supporting DB2 stored procedures.
  • Discuss and demonstrate capabilities of the IBM Optim Development Studio to implement SQL stored procedures.
  • Describe basic SQL procedure structure.
  • Demonstrate the use of SQL Procedure Language Elements.
  • Use cursor processing to return result sets to the invoker.
  • Handle Exceptions.
  • Nest Stored Procedures.
  • Use IBM Optim Development Studio debugging capability to debug an SQL stored procedure.
  • Use sqlpltrc API to trace SQL stored procedures.
  • Employ security techniques for SQL procedures.
  • Analyze and improve SQL access plans.



DB2 Stored Procedure Introduction
Describe a stored procedure.
Determine when a stored procedure should be used.
Describe execution flow using stored procedures.
List DB2 stored procedure design and general tips.

IBM Optim Development Studio or Command Line Tools
Describe the IBM Data Studio Developer.
Identify the capabilities of the IBM Data Studio Developer.
Create and execute simple stored procedures using IBM Data Studio Developer, Command Editor and Command Window.

Basic SQL Procedure Structure
Describe the structure of an SQL procedure.
Explain various clauses of the CREATE PROCEDURE statement.
Describe the structure of the procedure body.
List the statements that can be coded in the procedure body.
Alter Procedure.
Drop Procedure.
Create Module.
Replace Module.
Alter Module.
Drop Module.

Overview of SQL PL Language Elements
Discuss DB2 data types.
Select the proper data types.
Work with user-defined data types.
Work with Row data type.
Work with Associative arrays.
Implement data type anchoring.

Using Flow of Control Statements
Use Compound statements (ATOMIC and NOT ATOMIC).
Use labels in both compound statements and loops.
Work with Conditional Statements (IF and CASE).
Implement Looping (FOR, WHILE,REPEAT, and LOOP).
Transfer Control using (GOTO, LEAVE, ITERATE, RETURN, COMMIT, and ROLLBACK).

Cursors and Result Sets
Explain cursor processing.
Use cursors inside SQL procedures.
Perform positioned deletes and positioned updates.
Describe cursor behavior on commit and rollback.
Use cursor processing to return result sets to an application.
Explain how cursors affect locking.

Condition Handling
Explain the difference in SQLSTATE and SQLCODE.
Describe a condition handler.
Explain when to use a condition handler.
Use condition handlers.
Force an application exception and set the appropriate message.
Check the success or failure of an SQL statement.
Raise an SQL error.

Nested SQL Procedures
Call a stored procedure.
Describe a nested stored procedure.
Pass parameters between nested SQL procedures.
Return and receive result sets from within nested SQL procedures.
Write recursive SQL procedures.

IBM Optim Development Studio SQL Procedure Debug
Describe the IBM Optim Development Studio Routine Debugger capabilities.
Describe platforms supported for debugging.
Deploy a stored procedure for debugging.
Debug a stored procedure with the assistance of the Routine Debugger.

SQL Procedure Tracing using sqlpltrc
Describe the purpose of sqlpltrc.
Define the process for installing sqlpltrc.
Define the procedures for trace management.
Define the procedures for trace reporting.
Define the procedures for trace entries.
Show the steps to create a sample trace.
Discuss steps used to identify and resolve problems.

Security Considerations in SQL Procedures
Describe the relationship between a DB2 SQL procedure and a package.
Rebind a package associated with an SQL PL procedure.
Define who a package owner is and describe the package owner's responsibilities.
Define who a routine definer is and describe the routine definer's responsibilities.
Describe the routine invoker's behavior and authorization requirements.

SQL Stored Procedures Performance
Analyze and improve SQL access plans.
Avoid or simplify multiple statements.
Exploit set-at-a-time semantics of SQL.
Improve cursor performance.

S5 Box