diff --git a/docs/database/数据库基础知识.md b/docs/database/数据库基础知识.md index 92d30998..8d44d1e8 100644 --- a/docs/database/数据库基础知识.md +++ b/docs/database/数据库基础知识.md @@ -132,7 +132,14 @@ truncate 和 drop 属于 DDL(数据定义语言)语句,操作立即生效, ### 执行速度不同 -一般来说:drop>truncate>delete(这个我没有设计测试过)。 +一般来说:drop > truncate > delete(这个我没有设计测试过)。 +> `delete`命令执行的时候会产生数据库的`binlog`日志,而日志记录是需要消耗时间的,但是也有个好处方便数据回滚恢复。 +> +> `truncate`命令执行的时候不会产生数据库日志,因此比`delete`要快。除此之外,还会把表的自增值重置和索引恢复到初始大小等。 +> +> `drop`命令会把表占用的空间全部释放掉。 +> +> Tips:你应该更多地关注在使用场景上,而不是执行效率。 ## 数据库设计通常分为哪几步?