Professional Documents
Culture Documents
The standard SQL commands to interact with relational databases are CREATE, SELECT, INSERT,
UPDATE, DELETE and DROP. These commands can be classified into groups based on their nature:
Description
Creates a new table, a view of a table, or other
object in database
Modifies an existing database object, such as a
table.
Deletes an entire table, a view of a table or
other object in the database.
ALTER
DROP
Description
Creates a record
Modifies records
Deletes records
10
Description
Gives a privilege to user
Takes back privileges granted
from user
15
20
Description
Retrieves certain records from one
or more tables
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
tables. The table is a collection of related data entries and it consists of columns and rows.
fields. The fields in the CUSTOMERS table consist of ID, NAME, AGE, ADDRESS and SALARY.
25
A NULL value in a table is a value in a field that appears to be blank, which means a field with a NULL value
is a field with no value.
It is very important to understand that a NULL value is different than a zero value or a field that contains
spaces. A field with a NULL value is one that has been left blank during record creation.
SQL Constraints:
Constraints are the rules enforced on data columns on table. These are used to limit the type of data that
can go into a table. This ensures the accuracy and reliability of the data in the database.
Example:
10
15
20
For example, the following SQL creates a new table called CUSTOMERS and adds five columns, three of
which, ID and NAME and AGE, specify not to accept NULLs:
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)
);
If CUSTOMERS table has already been created, then to add a NOT NULL constraint to SALARY column in
Oracle and MySQL, you would write a statement similar to the following:
ALTER TABLE CUSTOMERS
MODIFY SALARY DECIMAL (18, 2) NOT NULL;
DEFAULT Constraint: Provides a default value for a column when none is specified.
Example:
25
30
35
For example, the following SQL creates a new table called CUSTOMERS and adds five columns. Here,
SALARY column is set to 5000.00 by default, so in case INSERT INTO statement does not provide a value
for this column. then by default this column would be set to 5000.00.
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2) DEFAULT 5000.00,
PRIMARY KEY (ID)
);
If CUSTOMERS table has already been created, then to add a DFAULT constraint to SALARY column, you
would write a statement similar to the following:
ALTER TABLE CUSTOMERS
MODIFY SALARY DECIMAL (18, 2) DEFAULT 5000.00;
45
50
55
Example:
For example, the following SQL creates a new table called CUSTOMERS and adds five columns. Here, AGE
column is set to UNIQUE, so that you can not have two records with same age:
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL UNIQUE,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)
);
If CUSTOMERS table has already been created, then to add a UNIQUE constraint to AGE column, you
would write a statement similar to the following:
ALTER TABLE CUSTOMERS
MODIFY AGE INT NOT NULL UNIQUE;
You can also use following syntax, which supports naming the constraint in multiple columns as well:
ALTER TABLE CUSTOMERS
ADD CONSTRAINT myUniqueConstraint UNIQUE(AGE, SALARY);
15
20
30
35
40
45
50
60
A foreign key is a key used to link two tables together. This is sometimes called a referencing key.
Foreign Key is a column or a combination of columns whose values match a Primary Key in a different table.
The relationship between 2 tables matches the Primary Key in one of the tables with a Foreign Key in
the second table.
If a table has a primary key defined on any field(s), then you can not have two records having the same
value of that field(s).
Example:
Consider the structure of the two tables as follows:
CUSTOMERS table:
5
10
ORDERS table:
15
20
25
CHECK Constraint: The CHECK constraint ensures that all values in a column satisfy certain
30
conditions.
The CHECK Constraint enables a condition to check the value being entered into a record. If the condition
evaluates to false, the record violates the constraint and isnt entered into the table.
Example:
35
40
45
50
For example, the following SQL creates a new table called CUSTOMERS and adds five columns. Here, we
add a CHECK with AGE column, so that you can not have any CUSTOMER below 18 years:
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL CHECK (AGE >= 18),
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)
);
If CUSTOMERS table has already been created, then to add a CHECK constraint to AGE column, you
would write a statement similar to the following:
ALTER TABLE CUSTOMERS
MODIFY AGE INT NOT NULL CHECK (AGE >= 18 );
You can also use following syntax, which supports naming the constraint in multiple columns as well:
ALTER TABLE CUSTOMERS
ADD CONSTRAINT myCheckConstraint CHECK(AGE >= 18);
55
INDEX: Use to create and retrieve data from the database very quickly.
The INDEX is used to create and retrieve data from the database very quickly. Index can be created by
using single or group of columns in a table. When index is created, it is assigned a ROWID for each row
before it sorts out the data.
Proper indexes are good for performance in large databases, but you need to be careful while creating
index. Selection of fields depends on what you are using in your SQL queries.
Example:
5
10
15
For example, the following SQL creates a new table called CUSTOMERS and adds five columns:
CREATE TABLE CUSTOMERS(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25) ,
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID)
);
Now, you can create index on single or multiple columns using the following syntax:
CREATE INDEX index_name
ON table_name ( column1, column2.....);
To create an INDEX on AGE column, to optimize the search on customers for a particular age, following is
the SQL syntax:
CREATE INDEX idx_age
ON CUSTOMERS ( AGE );
SQL Syntax:
25
30
35
SQL IN Clause:
40
SQL LIKEClause:
50
55
WHERE CONDITION
GROUP BY column_name;
SELECT COUNT(column_name)
FROM table_name
WHERE CONDITION;
SELECT SUM(column_name)
FROM table_name
WHERE CONDITION
GROUP BY column_name
HAVING (arithematic function condition);
20
30
35
40
50
55
FROM
-9,223,372,036,854,775,808
-2,147,483,648
-32,768
0
0
-10^38 +1
-10^38 +1
-922,337,203,685,477.5808
-214,748.3648
TO
9,223,372,036,854,775,807
2,147,483,647
32,767
255
1
10^38 -1
10^38 -1
+922,337,203,685,477.5807
+214,748.3647
FROM
-1.79E + 308
-3.40E + 38
TO
1.79E + 308
3.40E + 38
FROM
Jan 1, 1753
Jan 1, 1900
TO
Dec 31, 9999
Jun 6, 2079
Stores a date like June 30, 1991
Stores a time of day like 12:30 P.M.
DATA TYPE
Char
FROM
Char
Varchar
Varchar
varchar(max)
varchar(max)
Text
text
TO
Maximum length of 8,000
characters.( Fixed length nonUnicode characters)
Maximum of 8,000 characters.
(Variable-length non-Unicode data).
Maximum length of 231characters,
Variable-length non-Unicode data
(SQL Server 2005 only).
Variable-length non-Unicode data
with a maximum length of
2,147,483,647 characters.
Description
Maximum length of 4,000 characters.( Fixed length
Unicode)
Maximum length of 4,000 characters.(Variable length
Unicode)
Maximum length of 231characters (SQL Server 2005
only).( Variable length Unicode)
Maximum length of 1,073,741,823 characters.
( Variable length Unicode )
Description
Maximum length of 8,000 bytes(Fixed-length binary data )
Maximum length of 8,000 bytes.(Variable length binary data)
Maximum length of 231 bytes (SQL Server 2005 only).
( Variable length Binary data)
Maximum length of 2,147,483,647 bytes. ( Variable
length Binary Data)
Description
Stores values of various SQL Server-supported data
types, except text, ntext, and timestamp.
Stores a database-wide unique number that gets
updated every time a row gets updated
Stores a globally unique identifier (GUID)
Stores XML data. You can store xml instances in a
column or a variable (SQL Server 2005 only).
cursor
table