SQL Tutorial
SQL Tutorial
What is SQL?
1. SQL stands for Structured Query Language
2. SQL allows you to access a database
3. SQL is an ANSI standard computer language
4. SQL can execute queries against a database
5. SQL can retrieve data from a database
6. SQL can insert new records in a database
7. SQL can delete records from a database
8. SQL can update records in a database
9. SQL is easy to learn
Note: SQL statements are not case sensitive. SELECT is the same as select.
Creating Tables
The create table statement is used to create a new table. Here is the format of a simple
create table statement:
create table "tablename"
("column1" "data type",
"column2" "data type",
"column3" "data type");
Format of create table if you were to use optional constraints:
create table "tablename"
("column1" "data type"
[constraint],
"column2" "data type"
[constraint],
"column3" "data type"
[constraint]);
[ ] = optional
Note: You may have as many columns as you'd like, and the constraints are optional.
Example:
create table employee
(first varchar(15),
last varchar(20),
age number(3),
address varchar(30),
city varchar(20),
state varchar(20));
To create a new table, enter the keywords create table followed by the table name,
followed by an open parenthesis, followed by the first column name, followed by the data
type for that column, followed by any optional constraints, and followed by a closing
parenthesis. It is important to make sure you use an open parenthesis before the
beginning table, and a closing parenthesis after the end of the last column definition.
Make sure you seperate each column definition with a comma. All SQL statements
should end with a ";".
The table and column names must start with a letter and can be followed by letters,
numbers, or underscores - not to exceed a total of 30 characters in length. Do not use any
SQL reserved keywords as names for tables or column names (such as "select", "create",
"insert", etc).
Data types specify what the type of data can be for that particular column. If a column
called "Last_Name", is to be used to hold names, then that particular column should have
a "varchar" (variable-length character) data type.
Here are the most common Data types:
What are constraints? When tables are created, it is common for one or more columns to
have constraints associated with them. A constraint is basically a rule associated with a
column that the data entered into that column must follow. For example, a "unique"
constraint specifies that no two records can have the same value in a particular column.
They must all be unique. The other two most popular constraints are "not null" which
specifies that a column can't be left blank, and "primary key". A "primary key" constraint
defines a unique identification of each record (or row) in a table. All of these and more
will be covered in the future Advanced release of this Tutorial. Constraints can be entered
in this SQL interpreter, however, they are not supported in this Intro to SQL tutorial &
interpreter. They will be covered and supported in the future release of the Advanced
SQL tutorial - that is, if "response" is good.
It's now time for you to design and create your own table. You will use this table
throughout the rest of the tutorial. If you decide to change or redesign the table, you can
either drop it and recreate it or you can create a completely different one.
Using Quotes
Note that we have used single quotes around the conditional values in the examples.
SQL uses single quotes around text values (most database systems will also accept
double quotes). Numeric values should not be enclosed in quotes.
For text values:
This is correct:
SELECT * FROM Persons WHERE FirstName='Tove'
This is wrong:
SELECT * FROM Persons WHERE FirstName=Tove
For numeric values:
This is correct:
SELECT * FROM Persons WHERE Year>1965
This is wrong:
SELECT * FROM Persons WHERE Year>'1965'
Using LIKE
The following SQL statement will return persons with first names that start with an 'O':
SELECT * FROM Persons
WHERE FirstName LIKE 'O%'
The following SQL statement will return persons with first names that end with an 'a':
SELECT * FROM Persons
WHERE FirstName LIKE '%a'
The following SQL statement will return persons with first names that contain the pattern
'la':
SELECT * FROM Persons
WHERE FirstName LIKE '%la%'
Person:
LastName FirstName Address City
Nilsen Fred Kirkegt 56 Stavanger
Rasmussen Storgt 67
Person:
LastName FirstName Address City
Nilsen Fred Kirkegt 56 Stavanger
Rasmussen Nina Stien 12 Stavanger
Delete a Row
"Nina Rasmussen" is going to be deleted:
DELETE FROM Person WHERE LastName = 'Rasmussen'
Result
LastName FirstName Address City
Nilsen Fred Kirkegt 56 Stavanger