Oracle DDL,DML,DCL,TCL 基础概念

Oracle DDL,DML,DCL,TCL 基础概念
2011-12-08 14:59:56      我来说两句      
收藏    我要投稿

 

对于SQL语言,有两个组成部分:

DML(data manipulation language):它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。

DDL(data definition language):DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。 回答者:zhongsojun | 三级| 2009-9-1 19:30 

          

 SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,

数据定义语言DDL,数据控制语言DCL。

1 数据查询语言DQL

数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE

子句组成的查询块:

SELECT <字段名表>

FROM <表或视图名>

WHERE <查询条件>

2 数据操纵语言

数据操纵语言DML主要有三种形式:

1) 插入:INSERT

2) 更新:UPDATE

3) 删除:DELETE

 

3 数据定义语言DDL

数据定义语言DDL用来创建数据库中的各种对象-----表、视图、

索引、同义词、聚簇等如:

CREATE TABLE/VIEW/INDEX/SYN/CLUSTER

 

4 数据控制语言DCL

数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制

数据库操纵事务发生的时间及效果,对数据库实行监视等。如:

1) GRANT:授权。

2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一点。

回滚---ROLLBACK

回滚命令使数据库状态回到上次最后提交的状态。其格式为:

SQL>ROLLBACK;

3) COMMIT [WORK]:提交。 www.2cto.com

在数据库的插入、删除和修改操作时,只有当事务在提交到数据

库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看

到所做的事情,别人只有在最后提交完成后才可以看到。

提交数据有三种类型:显式提交、隐式提交及自动提交。下面分

别说明这三种类型。

(1) 显式提交

用COMMIT命令直接完成的提交为显式提交。其格式为:

SQL>COMMIT;

(2) 隐式提交

用SQL命令间接完成的提交为隐式提交。这些命令是:

ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,

EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。

(3) 自动提交

若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,

系统将自动进行提交,这就是自动提交。其格式为:

SQL>SET AUTOCOMMIT ON;

 

 

DDL,DML,DCL 之间的区别

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

DDL,DML和DCL命令之间的区别?(DDL是数据定义语言,如:)

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(撤销由GRANT命令赋予的访问权限)

DML is Data Manipulation Language statements. Some examples:(DML是数据操作语言,如:)

 

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(调用一个PL/SQL或JAVA子程序)

EXPLAIN PLAN - explain access path to data(解释分析数据的访问路径)

LOCK TABLE - control concurrency(控制并发)

DCL is Data Control Language statements. Some examples:(DCL 是数据控制语言,如:)

 

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(在最近一次COMMIT之后重新保存数据库)

SET TRANSACTION - Change transaction options like what rollback segment to use(改变事务选项)

你可能感兴趣的:(数据库)