DCL Full Form is Data Control Language. DCL is a syntax based computer programming language. It is a subset of the Structured Query Language (SQL) allowing database administrators to configure security access to relational databases.
It complements (1) Data Definition Language (DDL) that performs functions like add, select, create, delete etc. to database objects and (2) Data Manipulation Language (DML), uses commands like retrieve, insert and modify the contents of a database. DCL is the one of the simplest SQL subsets, consisting only three commands: GRANT, REVOKE, and DENY. These three commands provide administrators flexibility to set or remove database permissions.
The GRANT command is used by administrators to add new permissions to a user. Privilege is a keyword to grant a wide variety of permissions or a specific permission. The object may be any database object. The user may be any database user. GRANT OPTION clause at the end of the GRANT command, grant the specified user the permissions defined in the statement, it also gives the user the ability to grant the same permissions to other database users.
It has a very simple syntax:
GRANT [privilege] ON [object] TO [user] [WITH GRANT OPTION]
The REVOKE command is used to remove database access to a database user. The syntax for this command is:
REVOKE [GRANT OPTION FOR] [permission] ON [object] FROM [user] [CASCADE]
The CASCADE option revokes the specified permission
The DENY command is used explicitly prevent a user from receiving a particular permission. The syntax for this command is:
DENY [permission] ON [object] TO [user]