MySQL删除表的三种方式[通俗易懂]

MySQL删除表的三种方式

大家好,又见面了,我是全栈君。

drop table

drop 是直接删除表信息,速度最快,但是无法找回数据

例如删除 user 表:

drop table user;

truncate (table)

truncate 是删除表数据,不删除表的结构,速度排第二,但不能与where一起使用

例如删除 user 表:

truncate table user;

delete from

delete 是删除表中的数据,不删除表结构,速度最慢,但可以与where连用,可以删除指定的行

例如删除user表的所有数据

delete from user;

删除user表的指定记录

delete from user where user_id = 1;

三种方式的区别

相同点

  • truncate和不带where子句的delete,drop都会删除表内的数据;

  • drop,truncate都是DDL语句(数据定义语言),执行后会自动提交;

不同点

  • 语句类型:delete语句是数据库操作语言(DML),truncate,drop是数据库定义语言(DDL);

  • 效率:一般来说 drop > truncate> delete;

  • 是否删除表结构:truncate和delete 只删除数据不删除表结构,truncate 删除后将重建索引(新插入数据后id从0开始记起),而 delete不会删除索引 (新插入的数据将在删除数据的索引后继续增加),drop语句将删除表的结构包括依赖的约束,触发器,索引等;

  • 安全性:drop和truncate删除时不记录MySQL日志,不能回滚,delete删除会记录MySQL日志,可以回滚;

  • 返回值:delete 操作后返回删除的记录数,而 truncate 返回的是0或者-1(成功则返回0,失败返回-1);

小知识

delete 与 delete from 区别

如果只针对一张表进行删除,则效果一样;如果需要联合其他表,则需要使用from

delete tb1 from tb1 m where id in (select id from tb2);

用法总结

  • 希望删除表结构时,用 drop;

  • 希望保留表结构,但要删除所有记录时, 用 truncate;

  • 希望保留表结构,但要删除部分记录时, 用 delete。

MySQL删除表的三种方式[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111747.html原文链接:https://javaforall.net

(0)
上一篇 2022年2月15日 下午3:00
下一篇 2022年2月15日 下午4:00


相关推荐

  • Office2010序列号_序列号被更换能升级吗

    Office2010序列号_序列号被更换能升级吗Office2010修改|更改|更换序列号的办法http://blog.csdn.net/microtong佟强2010年9月27日Office2010安装的时候,填了个序列号,安装成功了。但是后来激活没有成功。怎么更换序列号呢?进入控制面板,选择程序和功能,找到Office2010,点击右键,选择更改,参看下图。

    2025年5月22日
    4
  • 那些常见的C++、Qt基础面试题「建议收藏」

    那些常见的C++、Qt基础面试题「建议收藏」前言又到了金三银四的季节,每年这个时候都是跳槽的高峰期,在整理电脑资料的过程中发现一些之前记录的面试过程中最常提到的C++和Qt相关问题,其实都是些很基础的知识点,但是在面试过程中出镜率非常高。总结如下,暂不附答案,仅供参考。正文废话不多说,直接上题。C++基础篇1.线程同步的方式有哪些2.线程间通信如何实现3.进程间通信如何实现4.IO模型用过哪些5.IO实现的方式有哪些6.用过哪些STL7.迭代器实现怎么产生的,如何避免8.vector、list、map实现原理9.如何实现多

    2022年6月25日
    55
  • 算法时间复杂度计算方式

    算法时间复杂度计算方式【对于一个给定的算法,通常要评估其正确性和运行效率的高低。算法的正确性评估不在本文范围之内,本文主要讨论从算法的时间复杂度特性去评估算法的优劣。】如何衡量一个算法的好坏呢?显然,选用的算法应该是正确的(算法的正确性不在此论述)。除此之外,通常有三个方面的考虑:(1)算法在执行过程中所消耗的时间;(2)算法在执行过程中所占资源的大小,例如,占用内存空间的大小;(3)算法的易理解性…

    2022年5月15日
    41
  • CORBA简介_吴帝聪简介

    CORBA简介_吴帝聪简介 1.CORBA:CommonObjectRequestBrokerArchitecture,通用对象请求代理体系。是由对象管理组(ObjectManagementGroup,OMG)制定的一种标准的面向对象分布式应用程序体系规范,旨在为异构分布式环境中,硬件和软件系统的互联而提出的一种解决方案。2.解决异构分布式系统两条主要原则:(1).寻求独立于平台的模型和抽象,这

    2022年4月19日
    53
  • Python系列教程一Python入门(一)

    Python系列教程一Python入门(一)前言各位看博客的园友们,大家好,我就是那个风流倜傥的KK,还记得我那篇2019年的年中总结博客吗?我想有许多看博客的园友是没有读过我那篇文章的,KK很生气,后果很严重(开个玩笑了,怎么可能)。给大家

    2022年7月6日
    30
  • ④Midjourney Prompt常用参数

    ④Midjourney Prompt常用参数

    2026年3月15日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号