0% found this document useful (0 votes)
791 views

What Are The Difference Between DDL, DML and DCL Commands - Oracle FAQ

DDL commands are used to define database schemas and structures. Examples include CREATE, ALTER, and DROP. DML commands manipulate data within database objects, such as SELECT, INSERT, UPDATE, and DELETE. DCL commands control user access privileges using statements like GRANT and REVOKE. TCL commands manage transactions and include COMMIT, ROLLBACK, and SAVEPOINT. DDL commands execute faster than DML since they do not copy data to rollback segments.

Uploaded by

Anonymous 293DQY
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
791 views

What Are The Difference Between DDL, DML and DCL Commands - Oracle FAQ

DDL commands are used to define database schemas and structures. Examples include CREATE, ALTER, and DROP. DML commands manipulate data within database objects, such as SELECT, INSERT, UPDATE, and DELETE. DCL commands control user access privileges using statements like GRANT and REVOKE. TCL commands manage transactions and include COMMIT, ROLLBACK, and SAVEPOINT. DDL commands execute faster than DML since they do not copy data to rollback segments.

Uploaded by

Anonymous 293DQY
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

12/23/2015

WhatarethedifferencebetweenDDL,DMLandDCLcommands?|OracleFAQ

Home Oracle FAQ Knowledge Base SQL and PL/SQL SQL

User login
Login: *

What are the difference between DDL,


DML and DCL commands?
Submitted by admin on Wed, 20040804 13:49

Password: *

Login
[ Register ] [ Forgot
password ]

DDL
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

Site navigation
About
Blogs
Feed aggregator
Books
Directories
Events
FAQ's
Forums
Mailing Lists
Papers
Scripts
Tools
USENET News
Wiki
XML Feeds

DML
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

DCL
Data Control Language (DCL) statements. Some examples:
GRANT gives user's access privileges to database
REVOKE withdraw access privileges given with the GRANT command

TCL
http://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands

1/4

12/23/2015

WhatarethedifferencebetweenDDL,DMLandDCLcommands?|OracleFAQ

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
SQL

up

Difference between
TRUNCATE, DELETE and DROP
commands

Login to post comments

Submitted by madhuker (not verified) on Wed, 20050406 03:20.

DML statements can be rollbacked where DDL are autocommit.

Login to post comments

DML commands can't be


Submitted by ramakrishna (not verified) on Thu, 20060105 09:35.

DML commands can't be rollback when a DDL command is executed


immediately after a DML. DDL after DML means "auto commit". The
changes will return on disk not on the buffer. If the changes return on
the buffer it is possible to rollback not from the disk.

Login to post comments

Submitted by R. SATISH KUMAR (not verified) on Wed, 20050413 03:09.

DEAR SIR,
Let me tell you the difference between DDL,DML,TCL and DCL:
DDL COMMANDS:
CREATE,ALTER,DROP AND TRUNCATE ARE CALLED DDL COMMANDS. They are
called Data Definition since they are used for defining the data. That is the
structure of the data is known through these DDL commands.
DML COMMANDS:
DML commands are used for data manipulation. Some of the DML commands
insert,select,update,delete etc. Even though select is not exactly a DML
language command oracle still recommends you to consider SELECT as an DML
command.
TCL:
For revoking the transactions and to make the data commit to the database we
use TCL. Some of the TCL commands are:
1. ROLLBACK
2. COMMIT
ROLLBACK is used for revoking the transactions until last commit.
COMMIT is used for commiting the transactions to the database.
Once we commit we cannot rollback. Once we rollback we cannot commit.
Commit and Rollback are generally used to commit or revoke the transactions
http://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands

2/4

12/23/2015

WhatarethedifferencebetweenDDL,DMLandDCLcommands?|OracleFAQ

that are with regard to DML commands.


DCL:
Data Control Language is used for the control of data. That is a user can access
any data based on the priveleges given to him. This is done through DATA
CONTROL LANGUAGE. Some of the DCL Commands are:
1. GRANT
2. REVOKE.
"THESE ARE REFERRED FROM THE BOOK 'ORACLE 9i complete Reference' written
by Kooch and George. This is an Oracle Press Release." If you want further
details about this topic I can give you. Since I don't know your email address I
am not able to send you the complete information. I will give my email
address. That is, [email protected] . You can send your email
address to my email and i will discuss about this topic with you. If you can send
me your email address I can send you an complete attachment of this topic.
Thanking you,
SATISH KUMAR.

Login to post comments

Submitted by Marcel van Oosterhout (not verified) on Wed, 20051012 03:13.

SQL statements are often divided into three categories:


DML (Data Manipulation Language). These SQL statements are used to retrieve
and manipulate data. This category encompasses the most fundamental
commands including DELETE, INSERT, SELECT, and UPDATE. DML SQL statements
have only minor differences between SQL variations. DML SQL commands
include the following:
DELETE to remove rows.
INSERT to add a row.
SELECT to retrieve row.
UPDATE to change data in specified columns.
DDL (Data Definition Language). These SQL statements define the structure of a
database, including rows, columns, tables, indexes, and database specifics
such as file locations. DDL SQL statements are more part of the DBMS and have
large differences between the SQL variations. DML SQL commands include the
following:
CREATE to make a new database, table, index, or stored query.
DROP to destroy an existing database, table, index, or view.
DBCC (Database Console Commands) statements check the physical and
logical consistency of a database.
DCL (Data Control Language). These SQL statements control the security and
permissions of the objects or parts of the database(s). DCL SQL statements are
also more part of the DBMS and have large differences between the SQL
variations. DML SQL commands include the following:
GRANT to allow specified users to perform specified tasks.
DENY to disallow specified users from performing specified tasks.
REVOKE to cancel previously granted or denied permissions.

Login to post comments

Which 's the fastest command


Submitted by slib on Tue, 20100223 22:54.

What is the fastest command type from the 3 command types: DDL, DML and
DCL?
http://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands

3/4

12/23/2015

WhatarethedifferencebetweenDDL,DMLandDCLcommands?|OracleFAQ

Login to post comments

DDL is the fastest command


Submitted by amirtharaj on Sat, 20140201 08:20.

During the execution of DDL command. DDL command would not copy the
actual content to rollback tablespace, hence it is fast compared to DML
command.

Login to post comments

.:: Blogger Home :: Wiki Home :: Forum Home :: Privacy :: Contact ::.

http://www.orafaq.com/faq/what_are_the_difference_between_ddl_dml_and_dcl_commands

4/4

You might also like