MySQL中drop、delete与trancate的区别

drop table

  • 删除指定的表的结构和数据,执行后表将不存在
  • 无法恢复删除的数据
  • 等同于删除一个Excel表
DROP TABLE table_name;

DELETE

  • 只从表中删除数据,不删除表的结构
  • 允许删除指定条件的部分数据,若没有指定删除条件,就直接清空表中所有数据
  • 执行后表仍旧存在,但表中没有数据
  • 等同于删除一个Excel中的数据
  • 可通过还原备份或回放二进制日志来恢复被删除的数据
DELETE FROM table_name WHERE condition;

TRUNCATE

  • 同delete一样,用于清空表中的数据
  • 不可指定删除条件,直接删除所有数据
  • 不仅会删除表中数据,还会重置表中的自增计数器(也就是有auto_increment约束的字段的值)
  • 无法通过还原备份或回放日志来恢复被清空的数据
TRUNCATE TABLE table_name;

总结:

  • DROP TABLE: 删除整个表,包括表结构和数据,无法恢复。
  • DELETE: 删除表中的数据,可以使用 WHERE 子句指定条件,但是不会重置自增计数器。
  • TRUNCATE: 删除整个表中的数据,重置自增计数器,并释放表占用的存储空间,使其回到初始状态。

相关推荐

  1. MySQLdrop、deletetrancate区别

    2024-02-11 05:24:04       47 阅读
  2. mysql】drop、deletetruncate区别

    2024-02-11 05:24:04       46 阅读
  3. MySQL】SQLDROP、DELETE和TRUNCATE区别

    2024-02-11 05:24:04       40 阅读
  4. MySQLdrop、truncate和delete区别

    2024-02-11 05:24:04       44 阅读
  5. MySQL:drop、deletetruncate区别

    2024-02-11 05:24:04       53 阅读
  6. 【SQL】delete truncate 命令区别

    2024-02-11 05:24:04       59 阅读
  7. drop、deletetruncate区别

    2024-02-11 05:24:04       30 阅读
  8. DELETE、TRUNCATE 和 DROP 在MySQL区别及使用示例

    2024-02-11 05:24:04       40 阅读
  9. MySQL数据库Delete语句和Truncate table 语句区别

    2024-02-11 05:24:04       32 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-11 05:24:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-11 05:24:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-11 05:24:04       87 阅读
  4. Python语言-面向对象

    2024-02-11 05:24:04       96 阅读

热门阅读

  1. mysql RR、RC隔离级别实现原理

    2024-02-11 05:24:04       43 阅读
  2. 【PyTorch】张量(Tensor)的生成

    2024-02-11 05:24:04       48 阅读
  3. 最关键的十个图像特征

    2024-02-11 05:24:04       41 阅读
  4. 面向字节流编程-TCP协议

    2024-02-11 05:24:04       53 阅读
  5. Nginx访问控制模块详解

    2024-02-11 05:24:04       46 阅读
  6. cf923Div3F题

    2024-02-11 05:24:04       49 阅读
  7. 2024.2.7

    2024.2.7

    2024-02-11 05:24:04      41 阅读