语句分类
-
DQL(数据查询语言):select
-
DML(数据操纵语言):对数据进行操作,常用的delete,update,insert
-
DDL(数据库定义语言):用于定义或改变表结构,数据类型,表之间的链接和约束初始化工作,create,alter,drop
-
DCL(数据库控制语言):用来设置或更改数据库用户或角色权限的语句,grant,revoke,deny
-
执行速度上DROP>TRUNCATE>DELETE
DELETE
-
仅删除数据,不指定where条件会把整张表删除;
-
操作原数据会被放置到rollback segement 中,可以进行回滚(rollback)操作;
-
应用于表,视图;
TRUNCATE
- 仅删除数据;
- 无数据被放置rollback segement区域,不会触发triggle不能进行回滚操作;
- 应用于表;
DROP
-
删除表和数据;
-
同时释放资源(删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index),但依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid)
清空表数据,释放空间但不删除定义(保留表的数据结构); -
无数据被放置rollback segement区域,不会触发triggle,不能回滚;