top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

What are the difference between DDL, DML, DQL, TCL and DCL commands?

+2 votes
What are the difference between DDL, DML, DQL, TCL and DCL commands?
posted Jul 15, 2015 by Archana

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

1 Answer

+1 vote
Best answer


Data Definition Language (DDL) statements are used to define the database structure or schema.

Some examples:

CREATE - to create objects in the database

ALTER - alters the structure of the database

DROP - delete objects from the database

TRUNCATE - remove all records from a table, including all spaces allocated for the records are removed

COMMENT - add comments to the data dictionary

RENAME - rename an object


Data Manipulation Language (DML) statements are used for managing data within schema objects.

Some examples:

SELECT - retrieve data from the a database

INSERT - insert data into a table

UPDATE - updates existing data within a table

DELETE - deletes all records from a table, the space for the records remain

MERGE - UPSERT operation (insert or update)

CALL - call a PL/SQL or Java subprogram

EXPLAIN PLAN - explain access path to data

LOCK TABLE - control concurrency


Data Control Language (DCL) statements.

Some examples:

GRANT - gives user's access privileges to database

REVOKE - withdraw access privileges given with the GRANT command


Transaction Control (TCL) statements are used to manage the changes made by DML statements. It allows statements to be grouped together into logical transactions.

COMMIT - save work done

SAVEPOINT - identify a point in a transaction to which you can later roll back

ROLLBACK - restore database to original since the last COMMIT

SET TRANSACTION - Change transaction options like isolation level and what rollback segment to use

answer Jul 15, 2015 by Manikandan J
Data Query Language (DQL)

The commands of SQL that are used to retrieve data from the database are collectively called as DQL. So all Select statements comes under DQL.


To retrieve data from the database table.