Mysql三种常用的删除数据或者表的方式

 更新时间:2024年01月26日 10:28:40   作者:way_more  
本文主要介绍了Mysql三种常用的删除数据或者表的方式,它们分别是 TRUNCATE、DROP 和 DELETE,下面就详细的介绍一下这三种的使用,感兴趣的可以了解一下

前言

在 MySQL 中,有三种常用的方式可以删除表中的数据或整个表,它们分别是 TRUNCATE、DROP 和 DELETE。

TRUNCATE TABLE

TRUNCATE TABLE属于DDL语言,不走事务,数据不会回滚
TRUNCATE TABLE 语句会删除表中的所有数据,但保留表的结构,同时重置自增主键,释放空间

语法:

TRUNCATE TABLE table_name;

DROP TABLE

DROP TABLE属于DDL语言,不走事务,数据不会回滚
DROP TABLE 语句会完全删除表,包括表的结构和其中的数据。它会永久删除表,立即释放空间,无法撤销。

语法:

DROP TABLE [IF EXISTS] table_name;

如果指定了 IF EXISTS,则在表不存在时不会报错,直接返回操作成功。例如,DROP TABLE IF EXISTS employees; 将删除名为 employees 的表,如果该表存在的话。

DELETE

DELETE属于DML操作语言,只会删除数据不会删除表结构,会走事务,可回滚

DELETE 语句用于逐行删除表中的数据,可以根据指定的条件删除特定的行。

语法:

DELETE FROM table_name [WHERE condition];

DELETE 语句是一种较为慢速和资源密集的操作,因为它将逐行删除表中的数据,并且会触发事务日志和触发器等操作。如果只是想删除表中的数据而不是整个表,TRUNCATE TABLE 操作通常更快和更高效。

使用 DELETE 语句删除表中的数据并不会立即释放磁盘空间,当你执行 DELETE 语句删除行时,实际上是将这些行标记为已删除,但数据仍然占用磁盘空间。

如果你希望立即释放磁盘空间,可以使用 OPTIMIZE TABLE 命令。该命令将重建表,并且可以压缩表的数据,从而释放已删除行所占用的空间。

到此这篇关于Mysql三种常用的删除数据或者表的方式的文章就介绍到这了,更多相关Mysql 删除内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅谈MYSQL中树形结构表3种设计优劣分析与分享

    浅谈MYSQL中树形结构表3种设计优劣分析与分享

    在开发中经常遇到树形结构的场景,本文将以部门表为例对比几种设计的优缺点,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • MySQL 可扩展设计的基本原则

    MySQL 可扩展设计的基本原则

    可扩展设计是一个非常复杂的系统工程,所涉及的各个方面非常的广泛,技术也较为复杂,可能还会带来很多其他方面的问题。但不管我们如何设计,不管遇到哪些问题,有些原则我们还是必须确保的。
    2021-05-05
  • 批量替换 MySQL 指定字段中的字符串

    批量替换 MySQL 指定字段中的字符串

    批量替换 MySQL 指定字段中的字符串是数据库应用中很常见的需求,但是有很多初学者在遇到这种需求时,通常都是用脚本来实现;其实,MySQL 内置的有批量替换语法,效率也会高很多;想了解具体方法,继续阅读本文吧 :)
    2009-09-09
  • MYSQL SERVER收缩日志文件实现方法

    MYSQL SERVER收缩日志文件实现方法

    这篇文章主要介绍了MYSQL SERVER收缩日志文件实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • MySql允许远程连接如何实现该功能

    MySql允许远程连接如何实现该功能

    这篇文章主要介绍了 MySql允许远程连接如何实现该功能的相关资料,需要的朋友可以参考下
    2017-02-02
  • MySQL巧用sum、case和when优化统计查询

    MySQL巧用sum、case和when优化统计查询

    这篇文章主要给大家介绍了关于MySQL巧用sum、case和when优化统计查询的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Mysql实现全文检索、关键词跑分的方法实例

    Mysql实现全文检索、关键词跑分的方法实例

    这篇文章主要给大家介绍了关于Mysql实现全文检索、关键词跑分的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • MySQL中删除重复数据的简单方法

    MySQL中删除重复数据的简单方法

    这篇文章主要介绍了MySQL中删除重复数据的简单方法,比起一般的NOT IN语句的效率更为高,需要的朋友可以参考下
    2015-05-05
  • MySQL优化案例系列-mysql分页优化

    MySQL优化案例系列-mysql分页优化

    这篇文章主要介绍了MySQL优化案例系列-mysql分页优化,需要的朋友可以参考下
    2016-08-08
  • 开启mysql的binlog日志步骤详解

    开启mysql的binlog日志步骤详解

    这篇文章主要介绍了MySQL 5.7版本中二进制日志(bin_log)的配置和使用,文中通过图文及代码介绍的非常详细,需要的朋友可以参考下
    2025-02-02

最新评论