[go: up one dir, main page]

0% found this document useful (0 votes)
18 views7 pages

DDL DML DCL TCL and DQL - Index

The document provides an overview of SQL commands, categorizing them into five types: DDL (Data Definition Language), DML (Data Manipulation Language), DCL (Data Control Language), TCL (Transaction Control Language), and DQL (Data Query Language). Each category includes specific commands and their functions, such as creating and modifying tables, inserting and updating data, managing user permissions, handling transactions, and querying data. Additionally, it discusses the use of indexes to enhance data retrieval performance in databases.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views7 pages

DDL DML DCL TCL and DQL - Index

The document provides an overview of SQL commands, categorizing them into five types: DDL (Data Definition Language), DML (Data Manipulation Language), DCL (Data Control Language), TCL (Transaction Control Language), and DQL (Data Query Language). Each category includes specific commands and their functions, such as creating and modifying tables, inserting and updating data, managing user permissions, handling transactions, and querying data. Additionally, it discusses the use of indexes to enhance data retrieval performance in databases.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

DDL, DML, DCL, TCL, and DQL

SQL Commands
SQL commands are instructions. It is used to communicate with the database.
It is also used to perform specific tasks, functions, and queries of data.

SQL can perform various tasks like create a table, add data to tables, drop the
table, modify the table, set permission for users.

Types of SQL Commands


There are five types of SQL commands: DDL, DML, DCL, TCL, and DQL.

1. Data Definition Language (DDL)


o DDL changes the structure of the table like creating a table, dropping a table,
altering a table, etc.

o All the command of DDL are auto-committed that means it permanently save
all the changes in the database.

Here are some commands that come under DDL:


o CREATE

o ALTER

o DROP

o TRUNCATE

a. CREATE It is used to create a new table in the database.

Syntax:

CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);

Example:

CREATE TABLE EMPLOYEE(Name VARCHAR2(20), Email VARCHAR2(100), DOB DATE);

b. DROP: It is used to delete both the structure and record stored in the table.

Example

DROP TABLE EMPLOYEE;

c. ALTER: It is used to alter the structure of the database. This change could be
either to modify the characteristics of an existing attribute or probably to add a new
attribute.

Syntax:

To add a new column in the table

ALTER TABLE table_name ADD column_name COLUMN-definition;

To modify existing column in the table:

ALTER TABLE MODIFY(COLUMN DEFINITION....);

TRUNCATE: It is used to delete all the rows from the table and free the space
containing the table.

Syntax:

TRUNCATE TABLE table_name;

Example:

TRUNCATE TABLE EMPLOYEE;


2. Data Manipulation Language
o DML commands are used to modify the database. It is responsible for all form
of changes in the database.

o The command of DML is not auto-committed that means it can't permanently


save all the changes in the database. They can be rollback.

Here are some commands that come under DML:

o INSERT

o UPDATE

o DELETE

a. INSERT: The INSERT statement is a SQL query. It is used to insert data into the
row of a table.

Syntax:

INSERT INTO TABLE_NAME


(col1, col2, col3,.... col N)
VALUES (value1, value2, value3, .... valueN);

b. UPDATE: This command is used to update or modify the value of a column in the
table.

Syntax:

UPDATE table_name SET [column_name1= value1,...column_nameN = valueN]

[WHERE CONDITION]

c. DELETE: It is used to remove one or more row from a table.

Syntax:

DELETE FROM table_name [WHERE condition];

3. Data Control Language


DCL commands are used to grant and take back authority from any database user.
Here are some commands that come under DCL:

To Perform DCL we need to have Multiple Users in db

Ex:
CREATE LOGIN test WITH PASSWORD ='6646'

CREATE user test FOR LOGIN test

o Grant

o Revoke

a. Grant: It is used to give user access privileges to a database.

GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;


GRANT SELECT ON OBJECT::TBL_USERDETAILS TO test

b. Revoke: It is used to take back permissions from the user.

Example

REVOKE SELECT, UPDATE ON MY_TABLE FROM USER1, USER2;

GRANT SELECT, UPDATE ON MY_TABLE TO SOME_USER, ANOTHER_USER;

revoke select on object::TBL_USERDETAILS from test

SELECT SELECT statements on the table.

INSERT INSERT statements on the table.

UPDATE UPDATE statements on the table.

DELETE DELETE statements on the table.

ALTER Ability to perform ALTER TABLE statements to change the table definition.

REFERENCES Ability to create a constraint that refers to the table.

ALL SELECT INSERT, UPDATE, DELETE, and REFERENCES.

4. Transaction Control Language


TCL commands can only use with DML commands like INSERT, DELETE and UPDATE
only.
These operations are automatically committed in the database that's why they
cannot be used while creating tables or dropping them.

Here are some commands that come under TCL:

BEGIN TRY

BEGIN TRANSACTION

COMMIT TRANSACTION

END TRY

BEGIN CATCH

ROLLBACK TRANSACTION

END CATCH

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

a. Commit: Commit command is used to save all the transactions to the database.

Syntax:

COMMIT;

Example:

DELETE FROM CUSTOMERS


WHERE AGE = 25;
COMMIT;

b. Rollback: Rollback command is used to undo transactions that have not already
been saved to the database.

Syntax:

ROLLBACK;

Example:

DELETE FROM CUSTOMERS


WHERE AGE = 25;
ROLLBACK;
c. SAVEPOINT: It is used to roll the transaction back to a certain point without
rolling back the entire transaction.

CREATE TABLE TestTable


(
ID INT NOT NULL,
Value INT NOT NULL,
PRIMARY KEY (ID)
)

BEGIN TRANSACTION

INSERT INTO TestTable( ID, Value )


VALUES ( 3, N'30')
-- this will create a savepoint after the first INSERT
SAVE TRANSACTION FirstInsert

INSERT INTO TestTable( ID, Value )


VALUES ( 4, N'40')

SAVE TRANSACTION SecondInsert


-- this will rollback to the savepoint right after the first INSERT was
done
ROLLBACK TRANSACTION FirstInsert

-- this will commit the transaction leaving just the first INSERT
COMMIT

SELECT * FROM TestTable

5. Data Query Language


DQL is used to fetch the data from the database.

It uses only one command:

SELECT

SELECT: This is the same as the projection operation of relational algebra. It is used
to select the attribute based on the condition described by WHERE clause.

SQL CREATE INDEX Statement


The CREATE INDEX statement is used to create indexes in tables.

Indexes are used to retrieve data from the database more quickly than otherwise.
The users cannot see the indexes, they are just used to speed up searches/queries.
Index Follow B Tree Structure

What does SQL INDEX do?

The SQL INDEX does the following :

 INDEXES can locate information within a database very fast.


 An INDEX makes a catalog of rows of a database table as row can be pointed
within a fraction of the time with a minimum effort.
 A table INDEX is a database structure which arranges the values of one or
more columns in a specific order.
 The performance of an INDEX can not be recognized much when dealing with
relatively small tables.
 INDEX can work properly and quickly for the columns that have many
different values.
 It takes a long time to find an information for one or combination of columns
from a table when there are thousands of records in the table. In that case, if
indexes are created on that column, which are accessed frequently, the
information can be retrieved quickly.
 The INDEX first sorts the data and then it assigns an identification for each
row.
 The INDEX table having only two columns, one is a rowid and another is
indexed-column (ordered).
 When data is retrieved from a database table based on the indexed column,
the index pointer searches the rowid and quickly locates that position.in the
actual table and display, the rows sought for

CREATE INDEX index_name


ON table_name (column1, column2, ...);

DROP INDEX index_name ON table_name;

You might also like