mysql清空表数据的两种方式和区别解析

 更新时间:2019年05月07日 09:09:04   作者:赵帅强  
这篇文章主要介绍了mysql清空表数据的两种方式和区别,本文通过文字实例代码相结合给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

在MySQL中删除数据有两种方式:

  1. truncate(截短)属于粗暴型的清空
  2. delete属于精细化的删除

删除操作

如果你需要清空表里的所有数据,下面两种均可:

delete from tablename;
truncate table tablename;

而如果你只是删除一部分数据,就只能使用delete:

delete from tablename where case1 and case2;

区别

在精细化的删除部分数据时,只能使用delete。
而清空所有表数据时,两者均可,此时这两种方式有一定的区别:

返回值

truncate返回值为0,而delete会返回被删除的记录数

mysql> truncate serviceHost;
Query OK, 0 rows affected (0.04 sec)
mysql> delete from serviceHost where creator='test';
Query OK, 4 rows affected (0.01 sec)

自增字段

如果表中有自增字段,truncate会重置为1,而delete会保持自增的最大值。

执行效率

truncate不扫描表,相当于重新创建了表,只保留了表的结构,然后删除掉原有表,效率非常高。
delete会扫描全表,根据where语句做判断,因此效率低。

操作日志

truncate不写服务器日志,无法恢复。
delete会写服务器日志。

触发器

truncate不激活触发器,delete会激活触发器。

总结

以上所述是小编给大家介绍的mysql清空表数据的两种方式和区别解析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • MySQL解压版配置步骤详细教程

    MySQL解压版配置步骤详细教程

    这篇文章主要介绍了MySQL解压版配置步骤详细教程的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-12-12
  • MySQL之PXC集群搭建的方法步骤

    MySQL之PXC集群搭建的方法步骤

    PXC 是一套 MySQL 高可用集群解决方案,本文主要介绍了MySQL之PXC集群搭建的方法步骤,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • MYSQL 随机 抽取实现方法及效率分析

    MYSQL 随机 抽取实现方法及效率分析

    MYSQL的随机抽取实现方法。举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。
    2009-05-05
  • Mysql启动与数据库的创建方法[图文]

    Mysql启动与数据库的创建方法[图文]

    Mysql启动与数据库的创建方法,mysql数据库入门
    2012-03-03
  • MySQL8.0.20压缩版本安装教程图文详解

    MySQL8.0.20压缩版本安装教程图文详解

    这篇文章主要介绍了MySQL8.0.20压缩版本安装教程,需本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,要的朋友可以参考下
    2020-08-08
  • mysql 5.7.24 安装配置图文教程

    mysql 5.7.24 安装配置图文教程

    这篇文章主要为大家详细介绍了mysql 5.7.24 安装配置图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • mysql8.0.2离线安装配置方法图文教程

    mysql8.0.2离线安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql8.0.2离线安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • SQL实现LeetCode(177.第N高薪水)

    SQL实现LeetCode(177.第N高薪水)

    这篇文章主要介绍了SQL实现LeetCode(177.第N高薪水),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • MySql避免重复插入记录的几种方法

    MySql避免重复插入记录的几种方法

    本文章来给大家提供三种在mysql中避免重复插入记录方法,主要是讲到了ignore,Replace,ON DUPLICATE KEY UPDATE三种方法,有需要的朋友可以参考一下
    2013-08-08
  • 通过yum方式安装mySql数据库的全过程

    通过yum方式安装mySql数据库的全过程

    当工作需要部署mysql时,通过手动上传安装包以及依赖包的方式安装mysql会比较麻烦,可以添加官方yum源,来实现自动安装依赖,方便快捷,下面这篇文章主要给大家介绍了关于通过yum方式安装mySql数据库的相关资料,需要的朋友可以参考下
    2022-07-07

最新评论