MySQL的TRUNCATE关键字

来源:互联网 发布:ios积分墙源码 编辑:程序博客网 时间:2024/06/18 12:14

在MySQL中,还有一种方式可以删除表中的所有记录,需要使用TRUNCATE关键字。
TRUNCATE [TABLE] 表名

参数说明

表名,指定要执行删除操作的数据表

在数据库chapter03中创建一张表tab_truncate

这里写图片描述

向数据表tab_truncate表中,添加5条记录

这里写图片描述

删除表中的所有记录

这里写图片描述

TRUNCATE语句和DELETE语句的区别

1、delete语句,是DML语句,truncate语句通常被认为是DDL语句。

2、delete语句,后面可以跟where子句,通常指定where子句中的条件表达式,只删除满足条件的部分记录,而truncate语句,只能用于删除表中的所有记录。

3、truncate语句,删除表中的数据后,向表中添加记录时,自动增加字段的默认初始值重新从1开始,而使用delete语句,删除表中所有记录后,向表中添加记录时,自动增加字段的值,为删除时该字段的最大值加1,也就是在原来的基础上递增。

4、delete语句,每删除一条记录,都会在日志中记录,而使用truncate语句,不会在日志中记录删除的内容,因此,truncate语句的执行效率比delete语句高。

向表tab_truncate中,重新添加5条记录

这里写图片描述

可以看出,新添加字段的id从1开始,默认值从1开始。

使用delete删除表中的记录,然后,添加一条新的记录,name字段值为K

这里写图片描述

可以看出,新添加字段的id为6,在删除之前的基础上继续增加。

原创粉丝点击