mirror of
https://github.com/Snailclimb/JavaGuide
synced 2025-06-20 22:17:09 +08:00
commit
bd78b6be67
@ -130,9 +130,18 @@ truncate 和 drop 属于 DDL(数据定义语言)语句,操作立即生效,
|
|||||||
* DML 是数据库操作语言(Data Manipulation Language)的缩写,是指对数据库中表记录的操作,主要包括表记录的插入(insert)、更新(update)、删除(delete)和查询(select),是开发人员日常使用最频繁的操作。
|
* DML 是数据库操作语言(Data Manipulation Language)的缩写,是指对数据库中表记录的操作,主要包括表记录的插入(insert)、更新(update)、删除(delete)和查询(select),是开发人员日常使用最频繁的操作。
|
||||||
* DDL (Data Definition Language)是数据定义语言的缩写,简单来说,就是对数据库内部的对象进行创建、删除、修改的操作语言。它和 DML 语言的最大区别是 DML 只是对表内部数据的操作,而不涉及到表的定义、结构的修改,更不会涉及到其他对象。DDL 语句更多的被数据库管理员(DBA)所使用,一般的开发人员很少使用。
|
* DDL (Data Definition Language)是数据定义语言的缩写,简单来说,就是对数据库内部的对象进行创建、删除、修改的操作语言。它和 DML 语言的最大区别是 DML 只是对表内部数据的操作,而不涉及到表的定义、结构的修改,更不会涉及到其他对象。DDL 语句更多的被数据库管理员(DBA)所使用,一般的开发人员很少使用。
|
||||||
|
|
||||||
|
> 由于`select`不会对表进行破坏,所以有的地方也会把`select`单独区分开叫做数据库查询语言DQL(Data Query Language)
|
||||||
|
|
||||||
### 执行速度不同
|
### 执行速度不同
|
||||||
|
|
||||||
一般来说:drop>truncate>delete(这个我没有设计测试过)。
|
一般来说:drop > truncate > delete(这个我没有设计测试过)。
|
||||||
|
> `delete`命令执行的时候会产生数据库的`binlog`日志,而日志记录是需要消耗时间的,但是也有个好处方便数据回滚恢复。
|
||||||
|
>
|
||||||
|
> `truncate`命令执行的时候不会产生数据库日志,因此比`delete`要快。除此之外,还会把表的自增值重置和索引恢复到初始大小等。
|
||||||
|
>
|
||||||
|
> `drop`命令会把表占用的空间全部释放掉。
|
||||||
|
>
|
||||||
|
> Tips:你应该更多地关注在使用场景上,而不是执行效率。
|
||||||
|
|
||||||
## 数据库设计通常分为哪几步?
|
## 数据库设计通常分为哪几步?
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user