首页 > 数据库 >常见的数据库删除方法

常见的数据库删除方法

时间:2024-10-24 23:18:48浏览次数:3  
标签:drop 删除 truncate 数据库 常见 磁盘空间 table delete

常用的三种删除方式:通过 delete、truncate、drop 关键字进行删除;这三种都可以用来删除数据,但场景不同。

执行速度:drop > truncate >> DELETE

1、delete命令

DELETE 属于数据库 DML操作语言。在 InnoDB 中,DELETE其实并不会真的把数据删除,mysql实际上只是给删除的数据打了个标记为已删除,因此 delete 删除表中的数据时,表文件在磁盘上所占空间不会变小,存储空间不会被释放,只是把删除的数据行设置为不可见。虽然未释放磁盘空间,但是下次插入数据的时候,仍然可以重用这部分空间(重用 → 覆盖)。

delete操作以后使用 optimize table table_name 会立刻释放磁盘空间。所以要想达到释放磁盘空间的目的,delete以后执行optimize table 操作。

2、drop命令

DROP 属于数据库 DDL定义语言 ,同Truncate一样,执行后立即生效,无法找回。drop table table_name 立刻释放磁盘空间,不管是 InnoDB 和 MyISAM; drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index); 依赖于该表的存储过程/函数将保留,但是变为 invalid 状态。

3、truncate命令

TRUNCATE属于数据库 DDL定义语言,不走事务,原数据不放到 rollback segment 中,操作不触发 trigger。执行后立即生效,无法找回!

truncate table table_name 立刻释放磁盘空间,不管是 InnoDB和MYISAM。truncate table其实有点类似于drop table 然后create,只不过这个create table 的过程做了优化,比如表结构文件之前已经有了等等。所以速度上应该是接近drop table的速度:

truncate 能够快速清空一个表,并且重置auto increment的值。

标签:drop,删除,truncate,数据库,常见,磁盘空间,table,delete
From: https://blog.csdn.net/qq_21171735/article/details/143098318

相关文章

  • 如何在保证 ACID 原则的同时提高数据库的并发性能?
    在保证ACID原则的同时提高数据库的并发性能是一个复杂但至关重要的任务。以下是一些方法和策略,可以在遵循ACID原则的基础上提升数据库的并发性能:1.优化事务设计批量操作:将多个相关的操作放入一个事务中,可以减少事务的数量,从而降低回滚和恢复的成本。这有助于提高性能,但需要......
  • 数据库设计过程中,除了3NF,还有哪些其他规范化形式?
    在数据库设计过程中,除了第三范式(3NF)外,还有其他几种重要的规范化形式,它们旨在进一步减少数据冗余和提高数据一致性。以下是对这些规范化形式的详细解释:第一范式(1NF):定义:确保每列都是不可分割的基本数据项,即表中不能再包含表(或称为列表),且表中的每一行都是唯一的(通过主键或其他......
  • 在 Mac 上有什么好的打开 .sqlite 或者 .db 数据库文件的软件
    在Mac上好的打开.sqlite或者.db数据库文件的软件有:1.DBBrowserforSQLite;2.SQLiteStudio;3.Base;4.PawSQLitePawset;5.NavicatforSQLite;6.DBeaver。DBBrowserforSQLite是一款免费、开源的SQLite数据库浏览器,适用于Mac、Windows和Linux系统。在Mac上打开.sql......
  • Clickhouse的使用以及常见命令
    一、添加clickhouse1.下载驱动程序2.进行连接3.显示所有的架构,包括系统架构二、命令语句1.展示所有的数据库showdatabases;2.创建一个数据库叫bigdata32(ifnotexists表示如果该库不存在就进行创建)createdatabaseifnotexistsbigdata32;3.创建表--创建数据......
  • 织梦重置mysql数据库密码忘记_织梦cms管理员密码忘记了怎么重置找回?
    方法一:通过phpMyAdmin登录数据库,在dede_admin表中重置密码登录数据库管理界面登录网站所在的虚拟主机或服务器,进入数据库管理(phpMyAdmin)界面。选择网站所用的MySQL数据库。找到并浏览dede_admin表在数据库中找到dede_admin表。点击表名,选择“浏览”选项,进入表数据......
  • [MySQL#1] database概述 | 常见的操作指令 | MySQL架构 | 存储引擎
    #1024程序员节|征文#目录一.数据库概念0.连接服务器1.什么是数据库口语中的数据库为什么数据不直接以文件形式存储,而需要使用数据库呢?总结二.......
  • sql数据库查询语句
    ###标题:SQL数据库查询语句在探讨SQL数据库查询语句时,我们首先要明确,SQL(结构化查询语言)是用于存取、修改、删除以及查询数据库中数据的标准编程语言。核心观点包括数据检索、数据操作、数据定义、数据控制等方面。在这些方面中,数据检索是最为常用和关键的一环,它使得用户能够根据......
  • 10月24日连接数据库前期准备工作
    今天说一下数据库连接准备工作同时也是给自己做个记录:首先需要准备的是:IDEA专业版、jdbc、Tomcat、MySQL、也可以准备MySQL可视化工具DG。其中的逻辑是IDEA通过jdbc链接数据库MySQL,书写HTML语言加上css和JavaScript,完成网页前端的绘制,再通过Tomcat服务器部署到本地8080端口的网......
  • jsp高校人事档案数字化管理系统70of8(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学院简介,校园风光,员工,工资发放开题报告内容一、研究背景与意义随着信息技术的飞速发展和高校人事管理的日益复杂,传统的人事档案管理方式已难以满足高效、准......
  • 数据库操作的学习1
    今天我们来学习数据库新更加复杂的操作,使我们在使用增,删,改,查时更加灵活和轻松还能减少代码的重复性。咱们先来了解一下查询的基本形式:select后面加列名from后面加表名where后面加查询条件表达式(过滤条件)orderby后面加排序的列明(后面写ASC升序或DESC降序)(排序条件)行数......