数据库的四种语言(DDL、DML、DCL、TCL)

13年前

1.DDL Data Definition Language 数据库定义语言 statements are used to define the database structure or schema.

DDLSQL语言的四大功能之一。
用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映像,定义数据的完整性、安全控制等约束
DDL
不需要commit. 
CREATE 
ALTER 
DROP 
TRUNCATE 
COMMENT 
RENAME 

2.DML 
Data Manipulation Language数据操纵语言 statements are used for managing data within schema objects.

DBMS提供,用于让用户或程序员使用,实现对数据库中数据的操作。 
DML
分成交互型DML和嵌入型DML两类。
依据语言的级别,DML又可分成过程性DML和非过程性DML两种。
需要commit. 
SELECT 
INSERT 
UPDATE 
DELETE 
MERGE 
CALL 
EXPLAIN PLAN 
LOCK TABLE 

3.DCL
Data Control Language数据库控制语言  授权,角色控制等 
GRANT 
授权 
REVOKE 
取消授权 

4.TCL
Transaction Control Language事务控制语言
SAVEPOINT 
设置保存点 
ROLLBACK  
回滚
SET TRANSACTION

SQL主要分成四部分
1)数据定义。(SQL DDL)用于定义SQL模式、基本表、视图和索引的创建和撤消操作。
2)数据操纵。(SQL DML)数据操纵分成数据查询和数据更新两类。数据更新又分成插入、删除、和修改三种操作。
3)数据控制。包括对基本表和视图的授权,完整性规则的描述,事务控制等内容。
4)嵌入式SQL的使用规定。涉及到SQL语句嵌入在宿主语言程序中使用的规则。

------------------------------------------------------------------------------------------------------------------------------------------

什么是DDL?
DDL是Data definition Language 的缩写,意为数据定义语言,是SQL语言的四大功能之一。
用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映像,定义数据的完整性、安全控制等约束。

什么是DML?
DML是Data Manipulation Language的缩写,意为数据操纵语言,是SQL语言的四大功能之一。
由DBMS提供,用于让用户或程序员使用,实现对数据库中数据的操作。
DML分成交互型DML和嵌入型DML两类。
依据语言的级别,DML又可分成过程性DML和非过程性DML两种。

什么是DCL?
DCL是Data Control Language的缩写,意为数据控制语言,是SQL语言的四大功能之一。

SQL的组成分成几部分?
SQL主要分成四部分:
(1)数据定义。(SQL DDL)用于定义SQL模式、基本表、视图和索引的创建和撤消操作。
(2)数据操纵。(SQL DML)数据操纵分成数据查询和数据更新两类。数据更新又分成插入、删除、和修改三种操作。
(3)数据控制。包括对基本表和视图的授权,完整性规则的描述,事务控制等内容。
(4)嵌入式SQL的使用规定。涉及到SQL语句嵌入在宿主语言程序中使用的规则。

What are the difference between DDL, DML and DCL commands?
DDL is Data Definition Language statements. 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
GRANT - gives user's access privileges to database
REVOKE - withdraw access privileges given with the GRANT command
DML is Data Manipulation Language statements. 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
CALL - call a PL/SQL or Java subprogram
EXPLAIN PLAN - explain access path to data
LOCK TABLE - control concurrency
DCL is Data Control Language statements. Some examples:

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 what rollback segment to use