Overview
First, the concepts of DB2 are presented and discussed.
The Structured Query Language (SQL) is presented as the means to access DB2 data (and to create and secure DB2 components).
Several guided, hands-on, practice sessions give each attendee an opportunity to use SQL to access data. QMF and/or SPUFI are used to execute SQL statements. Referential Integrity concepts and implementation are covered.
DB2 (SQL) programming / embedding SQL in a COBOL application program is presented and discussed in detail. A "shell" program is modified to SELECT a single row, FETCH multiple rows, INSERT, UPDATE, and DELETE row(s), use Referential Integrity, and use column functions and grouping.
DB2 performance guidelines are discussed. The SQL statement EXPLAIN PLAN is used to help to evaluate the efficiency of SQL statements.
The following "Release Dependent" features are also covered -
- Version 8 - Table-Controlled Partitioning, Common Table Expression, Dynamic Scrollable Cursors, multi-row FETCH and INSERT, GET DIAGNOSTICS, Recursive SQL, Sequence Objects, Scalar Full Select, Select Statement In An Insert statement, Delimited LOAD / UNLOAD, MQT's
- Version 9 - PureXML, New Data Types - bigger BINARY, VARBINARY, BIGINT, DECFLOAT, INSTEAD OF triggers, INTERSECT and EXCEPT, TRUNCATE Statement, MERGE Statement, Native SQL Stored Procedures, Optimistic Concurrency Control, Automatic Object Creation, Skip Locked Data, REOPT (AUTO)
LEARNING OBJECTIVES
As a result of this class, the attendee will be able to
- Explain DB2 concepts, terminology and components
- Discuss the Primary Key (PK), Unique Key (UK) and Foreign Key (FK) concept
- SELECT rows of data from DB2 tables
- Use QMF and/or SPUFI to "run" SQL statements
- Use the WHERE clause to SELECT specific rows of a DB2 table
- Build queries using the ORDER BY, GROUP BY, HAVING clauses
- Use the CASE expressions and several SCALAR / COLUMN FUNCTIONS
- Access multiple tables - JOIN, UNION, sub-queries, nested table expressions
- CREATE Tables, Indexes, Views
- "Change" tables using the INSERT, UPDATE, DELETE statements
- Describe the security provided by the GRANT and REVOKE
- Discuss the design considerations of REFERENTIAL INTEGRITY
- Perform DCLGENs to build table definitions and I/O areas
- Modify a "shell" program to select a single row, multiple rows, and change rows
- Discuss the importance of the SQLCODE and how to test for it
- Discuss overall DB2 PERFORMANCE considerations
- Run the EXPLAIN PLAN or VISUAL EXPLAIN and analyze results
Audience
Experienced Data Processing personnel who need use SQL to design and develop programs to access DB2 data.
Prerequisites
At least six months of TSO/ISPF and COBOL programming experience is recommended. No previous database experience is needed.
Course duration
5 days
Course outline
DAY 1
|
|
- Introduction to DB2
- DB2 - Concepts, and Terminology
- Structured Query Language (SQL)
- SQL 1 - The SELECT Statement
Hands-on Lab - SELECT
- Database 2 Interactive
- SQL 2 - SQL Functions
Hands-on Lab - SELECT / Special Features
- SQL 3 - ORDER BY, GROUP BY, HAVING
Hands-on Lab - ORDER BY, GROUP BY, HAVING
|
DAY 2 |
|
- Structured Query Language (SQL)(Continued)
- SQL 4 - Join, Sub-select, UNION
Hands-on Lab - Join, Sub-select, UNION
- SQL 5 - Data Definition Language
- SQL 6 - INSERT, UPDATE, DELETE
Hands-on Lab - Creating DB2 Components
- INSERT, UPDATE, DELETE
- SQL 8 - Other SQL Topics
|
DAY 3 |
|
- DB2 Application Programming
- SQL Programming I - Overview
- SQL Programming II - Data and Procedure Division Changes
Hands-on Lab - SELECT a single row into a program
- SQL Programming III - SELECTing Multiple Rows
Hands-on Lab - SELECT more than one row - the CURSOR
|
DAY 4 |
|
- DB2 Application Programming (Continued)
- Concurrency Control - Locking
- SQL Programming IV - INSERT, UPDATE, DELETE
Hands-on Lab - updating and Referential Integrity
|
DAY 5 |
|
- DB2 Application Programming (Continued)
Hands-on Lab - updating and Referential Integrity
- Additional Topics
- SQL Programming V - Other Programming Considerations
- DB2 Performance Introduction - EXPLAIN PLAN or VISUAL EXPLAIN
Hands-on Lab - Analyze SQL statements
|
Appendices
|
Appendix A - IBM Sample Tables |
Appendix I - DB2 for WINDOWs Overview |
Appendix B - Bibliography |
Appendix J - Additional Features - UDT / UDF, Trigger, Casting |
Appendix C - The Programming Workshop |
Appendix K - Group By Extensions |
Appendix D - Plan_Table & Dsn_Statemnt_Table |
Appendix Appendix L - Visual Explain Overview |
Appendix E - Hints to Success |
Appendix M - Functions |
Appendix F - SQLCODES / SQLSTATES |
Appendix Z8- Changes Summary - DB2 V 8 |
Appendix G - QMF Overview |
Appendix Z9 - Changes Summary - DB2 V 9 |
Appendix H - Stored Procedures |
Appendix Z9 - AppV9B - DB2 V9 Summary from IDUG Solution Journal |
|
|