MySQL for Developers
Course Description
This MySQL for Developers course gives in-depth knowledge of the skills, tools, and issues involved in writing applications with the MySQL database server. The course examines the tools used by MySQL development professionals, and uses real-world examples in explaining how to generate complex queries, and consume them in your application.
Course Duration
5 days
Course Objectives
During this course, delegates will:
- Use client programs and options.
- Access the MySQL database from program code.
- Write effective queries and stored routines.
- Inspect database metadata.
- Respond to database events with triggers.
- Handle errors and exceptions.
- Optimise SQL statements.
Course Content
INTRODUCTION TO MYSQL
What MySQL is and what it does
Install and set up MySQL using WAMP / XAMPP, or as standalone on Windows
CLIENT SERVER TECHNOLOGY
MySQL Architecture
Command line interface (to talk to the sever)
Options files and how to use them
MySQL Workbench – a development and administration from Oracle.
MySQL Connectors
CREATING A DATABASE AND TABLES
Creating a new database
Creating tables
Altering and dropping databases and tables
DATA TYPES
Data Type Overview
Numeric Data Types
Character String Data Types
Binary String Data Types
Temporal Data Types
Spatial Data Types
NULLs
QUERYING / INSERTING / DELETING FROM A DATABASE
Querying a database
SELECT Statement
INSERT Statement
UPDATE Statement
DELETE Statement
Optimizing queries and indexing tables
HANDLING ERRORS AND WARNINGS
SQL modes
Dealing with missing or invalid data types
Reading and understanding error messages
SQL EXPRESSIONS
SQL comparisons
Writing functions and comments in SQL
OBTAINING METADATA
Metadata Access Methods
The INFORMATION_SCHEMA Database/Schema
Using SHOW and DESCRIBE
The mysqlshow command
JOINS
What is a Join?
Joining Tables in SQL
Basic Join Syntax
Inner Joins
Outer Joins
Other Types of Joins
Joins in UPDATE and DELETE statements
SUBQUERIES
Types of Subqueries
Table Subquery Operators
Correlated and Non-Correlated Subqueries
Converting Subqueries to Joins
VIEWS
What are Views?
Creating Views
Updating Views
Managing Views
Obtaining View Metadata
PREPARED STATEMENTS
Why use Prepared Statements
Using Prepared Statements for the mysql client
Executing a Prepared Statement
Deallocating a Prepared Statement
Programming with Prepared Statements
STORED ROUTINES
What is a Stored Routine?
Creating Stored Routines
Compound Statements
Assign Variables
Parameter Declaration
Execute Stored Routines
Stored Routine Characteristics
Examine Stored Routines
TRIGGERS
What are Triggers?
When to Use Triggers
How to Delete Triggers
Restrictions on Triggers
OPTIMIZATION AND MONITORING
Overview of Optimization Principles
Using Indexes for Optimization
Using EXPLAIN to Analyze Queries
Using Performance Schema to Analyze Performance
Query rewriting techniques
Optimizing Queries by Limiting Output
Using Summary Tables
Optimizing Updates
What MySQL is and what it does
Install and set up MySQL using WAMP / XAMPP, or as standalone on Windows
CLIENT SERVER TECHNOLOGY
MySQL Architecture
Command line interface (to talk to the sever)
Options files and how to use them
MySQL Workbench – a development and administration from Oracle.
MySQL Connectors
CREATING A DATABASE AND TABLES
Creating a new database
Creating tables
Altering and dropping databases and tables
DATA TYPES
Data Type Overview
Numeric Data Types
Character String Data Types
Binary String Data Types
Temporal Data Types
Spatial Data Types
NULLs
QUERYING / INSERTING / DELETING FROM A DATABASE
Querying a database
SELECT Statement
INSERT Statement
UPDATE Statement
DELETE Statement
Optimizing queries and indexing tables
HANDLING ERRORS AND WARNINGS
SQL modes
Dealing with missing or invalid data types
Reading and understanding error messages
SQL EXPRESSIONS
SQL comparisons
Writing functions and comments in SQL
OBTAINING METADATA
Metadata Access Methods
The INFORMATION_SCHEMA Database/Schema
Using SHOW and DESCRIBE
The mysqlshow command
JOINS
What is a Join?
Joining Tables in SQL
Basic Join Syntax
Inner Joins
Outer Joins
Other Types of Joins
Joins in UPDATE and DELETE statements
SUBQUERIES
Types of Subqueries
Table Subquery Operators
Correlated and Non-Correlated Subqueries
Converting Subqueries to Joins
VIEWS
What are Views?
Creating Views
Updating Views
Managing Views
Obtaining View Metadata
PREPARED STATEMENTS
Why use Prepared Statements
Using Prepared Statements for the mysql client
Executing a Prepared Statement
Deallocating a Prepared Statement
Programming with Prepared Statements
STORED ROUTINES
What is a Stored Routine?
Creating Stored Routines
Compound Statements
Assign Variables
Parameter Declaration
Execute Stored Routines
Stored Routine Characteristics
Examine Stored Routines
TRIGGERS
What are Triggers?
When to Use Triggers
How to Delete Triggers
Restrictions on Triggers
OPTIMIZATION AND MONITORING
Overview of Optimization Principles
Using Indexes for Optimization
Using EXPLAIN to Analyze Queries
Using Performance Schema to Analyze Performance
Query rewriting techniques
Optimizing Queries by Limiting Output
Using Summary Tables
Optimizing Updates
Who should attend?
This course is for developers who want to work with the MySQL database.
Pre-requisites
Delegates should have experience with having created tables and queries within relational databases, and should be comfortable with basic SQL statements and another programming language. Some exposure to programming with databases. Experience with Java or PHP would be useful.