Intermediate SQL for Ingres
efficiently retrieving, analysing and updating

 

Home          Course Listing

Synopsis

A 3-day (with optional fourth day) class in the elements of Ingres SQL programming, consisting of lectures and supporting labs.  This course is aimed at programmers and sophisticated end-users with little or no prior exposure to SQL.  Provided on-site, using Ingres on Linux, Unix or W2K/W2K3.  Covers the basics of standard SQL, plus commonly used Ingres-specific extensions.  Includes thorough treatment of grouping and aggregation, outer-joins, correlated updates, and case-expressions.  The optional fourth day covers embedded SQL programming Customers in the US/Canada should contact KB Computer Associates to schedule this course

Duration and Cost

3 days, £1,050 / $2,050USD / €1,380, per seat, ex VAT
+ 1 optional day, £350 / $685USD / €460, per seat, ex VAT
Price excludes VAT and other applicable local taxes

Location

London, Manchester, Dublin, and on-site world-wide  

Format

Lecture and labs

Course Code

ISI  

Prerequisites

There are no firm prerequisites, however some previous programming experience (e.g. C, Cobol, ABF/4GL, OpenROAD, Java, or other language) may be helpful.  Although C is used as the host programming language for the embedded SQL lab exercises, all necessary supporting C code is supplied as part of the exercise.  C programming skills are not specifically required.  

Outline
Day 1

Chapter 1 Introduction to SELECT
  introducing SQL / scope of SQL / tables / SELECT / restriction / projection /logical order of execution / result column names / ORDER BY / isql / sql /
HELP pseudo-statement / the exercise database
Chapter 2 Data Types, Expressions and Functions
  numeric types / integers / arithmetic / relational operations / physical storage / casting and type conversion / implicit casting / explicit type
conversion / decimal / floating point / nulls / ifnull function / strings types / varchar(n) / char(n) / string manipulation / zero-length strings / byte / byte varying / abstract types / date / date arithmetic / data functions / money / BLObs / user-defined types / scalar functions
Chapter 3 Creating Tables and Views
  CREATE TABLE / constraints / primary key / references / unique / check / CREATE VIEW / DECLARE GLOBAL TEMPORARY TABLE
 

Day 2

Chapter 4 Introduction to Updating
  UPDATE / logical order of execution / INSERT / column mapping / DELETE / transactions / COMMIT / ROLLBACK / CREATE AS SELECT
Chapter 5 Grouping and Aggregation
  eliminating duplicates / aggregation / nulls / special rules for COUNT() / GROUP BY / logical order of execution / HAVING
Chapter 6 Joins and Outer Joins
  multiple tables / cartesian products / meaningful combinations / correlation names / multi-column joins / more than two tables / self-join / missing entities / outer join / left-join / right- and full-join / multiway joins
 

Day 3

Chapter 7 Subqueries and Unions
  select-expressions / composing select-expressions / unions of select-expressions / subqueries / correlated subqueries / using subqueries / list-membership / existentially quantified queries / scalar subqueries / any-or-all predicates
Chapter 8 Correlated Updates and COPY
  UPDATE revisited / logical order of execution / UPDATE FROM / correlated DELETE / COPY...FROM / COPY...INTO / COPY syntax / binary versus ASCII copy / bulk copy / incremental copy
 

Day 4
(optional)

Chapter 9 Introduction to Embedded SQL I
  using SQL in a 3GL / 3GLs / embedded SQL / running a preprocessor / API code generation / supported SQL / CONNECT / host language variables / dereferencing / SELECT...INTO / scope of variables /
permitted uses / select-loops / cursors / read-only cursors / embedded INSERT/UPDATE/DELETE / REPEATED queries / indicator variables / returning nulls / INCLUDE
Chapter 10 Introduction to Embedded SQL II
  detecting errors / error indicators / SQL communication area / explicit error checking / inquire_sql() / implicit error checking / WHENEVER /
custom error-handlers / row counts / dynamic SQL / EXECUTE IMMEDIATE
Contact us

  Discounts are available for large blocks of training or training credits bought at once.  Contact us for details.  

Ingres® is a trademark of Ingres Corporation | ©Rational Commerce Ltd. | Last updated 27/02/2008 11:20