3. 3
An Overview ofAn Overview of
SQLSQL
• SQL stands forSQL stands for SStructuredtructured QQueryuery LLanguage.anguage.
• It is the most commonly used relationalIt is the most commonly used relational
database language today.database language today.
• SQL works with a variety of different fourth-SQL works with a variety of different fourth-
generation (4GL) programming languages,generation (4GL) programming languages,
such as Visual Basic.such as Visual Basic.
SQL
4. 4
SQL is used for:SQL is used for:
• Data ManipulationData Manipulation
• Data DefinitionData Definition
• Data AdministrationData Administration
• All are expressed as an SQL statementAll are expressed as an SQL statement
or command.or command.
SQL
5. 5
SQLSQL
RequirementsRequirements
• SQL Must be embedded in a programmingSQL Must be embedded in a programming
language, or used with a 4GL like VBlanguage, or used with a 4GL like VB
• SQL is a free form language so there is noSQL is a free form language so there is no
limit to the the number of words per line orlimit to the the number of words per line or
fixed line break.fixed line break.
• Syntax statements, words or phrases areSyntax statements, words or phrases are
always in lower case; keywords are inalways in lower case; keywords are in
uppercase.uppercase.
SQL
Not all versions are case sensitive!Not all versions are case sensitive!
6. 6
SQL is a Relational DatabaseSQL is a Relational Database
• Represent all info in database as tablesRepresent all info in database as tables
• Keep logical representation of data independent from its physicalKeep logical representation of data independent from its physical
storage characteristicsstorage characteristics
• Use one high-level language for structuring, querying, andUse one high-level language for structuring, querying, and
changing info in the databasechanging info in the database
• Support the main relational operationsSupport the main relational operations
• Support alternate ways of looking at data in tablesSupport alternate ways of looking at data in tables
• Provide a method for differentiating between unknown values andProvide a method for differentiating between unknown values and
nulls (zero or blank)nulls (zero or blank)
• Support Mechanisms for integrity, authorization, transactions, andSupport Mechanisms for integrity, authorization, transactions, and
recoveryrecovery
A Fully Relational Database Management System must:A Fully Relational Database Management System must:
7. 7
DesignDesign
• SQL represents all information in the
form of tables
• Supports three relational operations:
selection, projection, and join. These
are for specifying exactly what data you
want to display or use
• SQL is used for data manipulation,
definition and administration
SQL
8. 8
Rows
describe the
Occurrence of
an Entity
Table DesignTable Design
SQ
L
Name Address
Jane Doe 123 Main Street
John Smith 456 Second Street
Mary Poe 789 Third Ave
Columns describe one
characteristic of the entity
9. 9
Data Retrieval (Queries)Data Retrieval (Queries)
• Queries search the database, fetch info,Queries search the database, fetch info,
and display it. This is done using theand display it. This is done using the
keywordkeyword SELECT
SELECT * FROM publishersSELECT * FROM publishers
pub_id pub_name address state
0736 New Age Books 1 1st
Street MA
0987 Binnet & Hardley 2 2nd
Street DC
1120 Algodata Infosys 3 3rd
Street CA
•
TheThe
** Operator asks for every column inOperator asks for every column in
10. 10
Data Retrieval (Queries)Data Retrieval (Queries)
• Queries can be more specific with a fewQueries can be more specific with a few
more linesmore lines
pub_id pub_name address state
0736 New Age Books 1 1st
Street MA
0987 Binnet & Hardley 2 2nd
Street DC
1120 Algodata Infosys 3 3rd
Street CA
• Only publishers in CA are displayedOnly publishers in CA are displayed
SELECT *SELECT *
from publishersfrom publishers
where state = ‘CA’where state = ‘CA’
11. 11
Data InputData Input
• Putting data into a table is accomplishedPutting data into a table is accomplished
using the keywordusing the keyword INSERT
pub_id pub_name address state
0736 New Age Books 1 1st
Street MA
0987 Binnet & Hardley 2 2nd
Street DC
1120 Algodata Infosys 3 3rd
Street CA
• Table is updated with new informationTable is updated with new information
INSERT INTO publishersINSERT INTO publishers
VALUES (‘0010’, ‘pragmatics’, ‘4 4VALUES (‘0010’, ‘pragmatics’, ‘4 4 thth
Ln’, ‘chicago’,Ln’, ‘chicago’,
‘il’)‘il’)
pub_id pub_name address state
0010 Pragmatics 4 4th
Ln IL
0736 New Age Books 1 1st
Street MA
0987 Binnet & Hardley 2 2nd
Street DC
1120 Algodata Infosys 3 3rd
Street CA
Keyword
Variable
12. 12
Types of TablesTypes of Tables
• User Tables:User Tables: contain information that iscontain information that is
the database management systemthe database management system
• System Tables:System Tables: contain the databasecontain the database
description, kept up to date by DBMSdescription, kept up to date by DBMS
itselfitself
There are two types of tables which make upThere are two types of tables which make up
a relational database in SQLa relational database in SQL
Relation Table
Tuple Row
Attribute Column
13. 13
Using SQLUsing SQL
SQL statements can be embedded into a programSQL statements can be embedded into a program
(cgi or perl script, Visual Basic, MS Access)(cgi or perl script, Visual Basic, MS Access)
OROR
SQ
L
Database
SQL statements can be entered directly at theSQL statements can be entered directly at the
command prompt of the SQL software beingcommand prompt of the SQL software being
used (such as mySQL)used (such as mySQL)
14. 14
Using SQLUsing SQL
To begin, you must first CREATE a databaseTo begin, you must first CREATE a database
using the following SQL statement:using the following SQL statement:
CREATE DATABASE database_nameCREATE DATABASE database_name
Depending on the version of SQL being usedDepending on the version of SQL being used
the following statement is needed to beginthe following statement is needed to begin
using the database:using the database:
USE database_nameUSE database_name
15. 15
Using SQLUsing SQL
• To create a table in the current database,
use the CREATE TABLE keyword
CREATE TABLE authorsCREATE TABLE authors
(auth_id int(9) not null,(auth_id int(9) not null,
auth_name char(40) not null)auth_name char(40) not null)
auth_id auth_name
(9 digit int) (40 char string)
16. 16
Using SQLUsing SQL
• To insert data in the current table, use
the keyword INSERT INTO
auth_id auth_name
• Then issue the statement
SELECT * FROM authors
INSERT INTO authors
values(‘000000001’, ‘John Smith’)
000000001 John Smith
17. 17
Using SQLUsing SQL
SELECT auth_name, auth_citySELECT auth_name, auth_city
FROM publishersFROM publishers
auth_id auth_name auth_city auth_state
123456789 Jane Doe Dearborn MI
000000001 John Smith Taylor MI
auth_name auth_city
Jane Doe Dearborn
John Smith Taylor
If you only want to display the author’s
name and city from the following table:
18. 18
Using SQLUsing SQL
DELETE from authorsDELETE from authors
WHERE auth_name=‘John Smith’WHERE auth_name=‘John Smith’
auth_id auth_name auth_city auth_state
123456789 Jane Doe Dearborn MI
000000001 John Smith Taylor MI
To delete data from a table, use
the DELETE statement:
19. 19
Using SQLUsing SQL
UPDATE authorsUPDATE authors
SET auth_name=‘hello’SET auth_name=‘hello’
auth_id auth_name auth_city auth_state
123456789 Jane Doe Dearborn MI
000000001 John Smith Taylor MI
To Update information in a database use
the UPDATE keyword
Hello
Hello
Sets all auth_name fields to helloSets all auth_name fields to hello
20. 20
Using SQLUsing SQL
ALTER TABLE authorsALTER TABLE authors
ADD birth_date datetime nullADD birth_date datetime null
auth_id auth_name auth_city auth_state
123456789 Jane Doe Dearborn MI
000000001 John Smith Taylor MI
To change a table in a database use
ALTER TABLE. ADD adds a characteristic.
ADD puts a new column in the table
called birth_date
birth_date
.
.
Type Initializer
21. 21
Using SQLUsing SQL
ALTER TABLE authorsALTER TABLE authors
DROP birth_dateDROP birth_date
auth_id auth_name auth_city auth_state
123456789 Jane Doe Dearborn MI
000000001 John Smith Taylor MI
To delete a column or row, use the
keyword DROP
DROP removed the birth_date
characteristic from the table
auth_state
.
.
22. 22
Using SQLUsing SQL
DROP DATABASE authorsDROP DATABASE authors
auth_id auth_name auth_city auth_state
123456789 Jane Doe Dearborn MI
000000001 John Smith Taylor MI
The DROP statement is also used to
delete an entire database.
DROP removed the database and
returned the memory to system
23. 23
Conclusion
• SQL is a versatile language that can
integrate with numerous 4GL languages
and applications
• SQL simplifies data manipulation by
reducing the amount of code required.
• More reliable than creating a database
using files with linked-list implementation
Frequently, presenters must deliver material of a technical nature to an audience unfamiliar with the topic or vocabulary. The material may be complex or heavy with detail. To present technical material effectively, use the following guidelines from Dale Carnegie Training®.
Consider the amount of time available and prepare to organize your material. Narrow your topic. Divide your presentation into clear segments. Follow a logical progression. Maintain your focus throughout. Close the presentation with a summary, repetition of the key steps, or a logical conclusion.
Keep your audience in mind at all times. For example, be sure data is clear and information is relevant. Keep the level of detail and vocabulary appropriate for the audience. Use visuals to support key points or steps. Keep alert to the needs of your listeners, and you will have a more receptive audience.
In your opening, establish the relevancy of the topic to the audience. Give a brief preview of the presentation and establish value for the listeners. Take into account your audience’s interest and expertise in the topic when choosing your vocabulary, examples, and illustrations. Focus on the importance of the topic to your audience, and you will have more attentive listeners.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
In your opening, establish the relevancy of the topic to the audience. Give a brief preview of the presentation and establish value for the listeners. Take into account your audience’s interest and expertise in the topic when choosing your vocabulary, examples, and illustrations. Focus on the importance of the topic to your audience, and you will have more attentive listeners.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
If you have several points, steps, or key ideas use multiple slides. Determine if your audience is to understand a new idea, learn a process, or receive greater depth to a familiar concept. Back up each point with adequate explanation. As appropriate, supplement your presentation with technical support data in hard copy or on disc, e-mail, or the Internet. Develop each point adequately to communicate with your audience.
Determine the best close for your audience and your presentation. Close with a summary; offer options; recommend a strategy; suggest a plan; set a goal. Keep your focus throughout your presentation, and you will more likely achieve your purpose.