SQL is an industry-standard language for accessing mainframe,
midrange and LAN-based, multi-user relational databases. This course will
teach the student how to read and write good SQL for querying, updating
and maintaining SQL databases. The course progresses through the elements
of the language to build a thorough appreciation and understanding of SQL's
capabilities and power. It covers ANSI-standard SQL and some of the common extensions.
On completion, delegates will be able to:
Who Should Attend
- describe where the SQL language came from and its set-based mode of operation
- write SQL statements to create and manipulate database objects and data
- read SQL effectively
- write queries to join many related tables
- use the features of the language to safeguard the data and its value to the user
- recognise the dangers inherent in the language that may return the right
result but would be fatally flawed with different data
Anyone wishing to use SQL to access data. This course is a common
prerequisite for those going on our client/server or database courses.
However, our Oracle SQL course is recommended for those who will be using
This course is made up of a mix of theory and practical sessions.
You will complete a series of exercises that cover all the important
components of the language and allow you to practise your SQL.
No prerequisite knowledge required at all. Typically delegate skills
will include a working familiarity with the Windows graphical
environment but no prior knowledge of SQL. The most successful
students on this course are those who can type accurately and
consistently, and can cope with 'syntax' as SQL is a syntactically 'fussy'
language. Typically students will have coded in some other language
but it is not necessary to have done so to be successful on this course.
The course is constructed with a view to being able to cope with students
who may wish to move at a faster or slower pace than others.
Introduction to Relational Databases
The need for an SQL standard; The ANSI standards; What is a database?;
What is a relational database?; Components of a relational database;
Normalised data; Anatomy of a table; Primary and foreign keys; Joins; Components of SQL
Data Manipulation Language
SELECT operations; DISTINCT; Virtual columns; Column aliases; Functions;
Restricting the rows returned; Multiple conditions; Ordering data; Inserting rows; Updating rows; Deleting rows
The theory of joining tables; Cross, Inner, Outer, Full, Left and Right;
Composite joins; Table aliases; SQL92 and SQL89 Join syntax
Data Definition Language
Data types; Column attributes; Create table; Primary and foreign keys;
Referential integrity; Alter and drop tables
Defining simple views; Views with virtual columns; Restricted-column views;
Joined-table views; Restricted-row views; View restrictions
Table aggregates; GROUP BY and aggregates; The HAVING clause
Using simple Subqueries; EXISTS; Correlated Subqueries
Further Data Manipulation Language
Unions; Self joins
Data Control Language
Identifying users; Setting privileges; GRANT and REVOKE