news 2026/4/22 16:24:38

清空表数据时,为什么有的人用 DELETE,有的人偏爱 TRUNCATE?看完你就明白了

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
清空表数据时,为什么有的人用 DELETE,有的人偏爱 TRUNCATE?看完你就明白了


做数据库开发也好,做安全运维也好,很多人都会碰到一个看似简单、实则很容易踩坑的问题:

我只是想把表清空,到底该用DELETE,还是TRUNCATE

表面上看,这俩都能把数据删掉。
但真正在项目里,它们的差别一点都不小:

  • 执行效率不一样
  • 事务行为不一样
  • 自增主键表现不一样
  • 使用场景也完全不同

另外,很多人还不知道,MySQL 里还有一个特别实用的骚操作:

用一条 SQL,快速复制一张表的结构和数据

这招在做测试环境、日志分析、应急取证、漏洞复现时特别方便。

今天这篇文章,就把这两个容易被忽略、但非常实用的知识点一次讲透:

  1. CREATE TABLE ... AS SELECT快速建表
  2. DELETETRUNCATE的核心区别

照样是实战风格,带 SQL、带结果、带思维导图。


一、先准备测试表:学生表 + 三条数据

为了方便演示,我们先创建一张测试表t_student

DROPTABLEIFEXISTSt_student;CREATETABLEt_student(snoINT(6)PRIMARYKEYAUTO_INCREMENT,snameVARCHAR(5)NOTNULL,sexCHAR(1)DEFAULT'男',ageINT(3),enterdateDATE,classnameVARCHAR(10),emailVARCHAR(15)UNIQUE);

插入三条测试数据:

INSERTINTOt_studentVALUES(NULL,'张三','男',21,'2023-09-01','java01班','zs@126.com');INSERTINTOt_studentVALUES(NULL,'李四','男',21,'2023-09-01','java01班','ls@126.com');INSERTINTOt_studentVALUES(NULL,'露露','男',21,'2023-09-01','java01班'
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 16:22:02

从“能用”到“可控”:AI 系统上线前必须完成的最后一公里

子玥酱 (掘金 / 知乎 / CSDN / 简书 同名) 大家好,我是 子玥酱,一名长期深耕在一线的前端程序媛 👩‍💻。曾就职于多家知名互联网大厂,目前在某国企负责前端软件研发相关工作,主要聚…

作者头像 李华
网站建设 2026/4/22 16:14:39

三步掌握BilibiliDown:从零开始的B站视频高效下载指南

三步掌握BilibiliDown:从零开始的B站视频高效下载指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/b…

作者头像 李华
网站建设 2026/4/22 16:11:49

DeepMosaics终极指南:5分钟掌握智能马赛克处理技术

DeepMosaics终极指南:5分钟掌握智能马赛克处理技术 【免费下载链接】DeepMosaics Automatically remove the mosaics in images and videos, or add mosaics to them. 项目地址: https://gitcode.com/gh_mirrors/de/DeepMosaics 你是否曾遇到过这样的困扰&am…

作者头像 李华