1、drop table table_name

使用 drop table 命令删除数据表和数据表中所有的内容。

语法:

drop table table_name

2、delete table table_name

使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录。

delete from table_name [where clause]
  • 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。
  • 你可以在 WHERE 子句中指定任何条件
  • 您可以在单个表中一次性删除记录。

当你想删除数据表中指定的记录时 WHERE 子句是非常有用的。

下面有一张表:

删除bt表中b等于0的记录:

删除bt表所有记录:

可以看到delete删除表的时候只是删除记录,不会删除到表的结构等。

3、truncate table table_name

Truncate 语句被认为是 DDL(数据定义语言)命令而不是 DML(数据操作命令)。这是因为每当我们使用这个命令时,表内容不会被操作,而是整个表被删除并重新创建。

  • 每当在表上执行TRUNCATE 命令时,不会执行在删除事件上定义的触发器,因为行不会被删除,整个表也会被删除。
  • 我们无法回滚TRUNCATE TABLE命令的操作,因为它是隐式提交的。但是,如果在截断整个操作时出现任何问题,MySQL会回滚,保持数据原封不动。
  • 如果表上有任何激活锁,则不能在其上执行TRUNCATE TABLE 命令,直到并且除非该锁被解锁。
  • 如果当前表的其他表中定义了任何外键,则不能截断当前表,因为其他表的外键正在引用该表的列。
  • 执行TRUNCATE查询的输出总是0行受影响,它没有指定删除的记录数,而是代表没有信息。
  • 表的所有索引和数据都被删除,但表上定义的分区即使在截断表后仍保持不变。
  • 与分配了AUTO_INCREMENT属性的列关联的序列被重置为起始值。这也适用于不支持重复使用序列值的存储引擎,如InnoDB和MyISAM。
  • 我们甚至可以使用TRUNCATE语句截断已损坏的InnoDB表。
  • 考虑到TRUNCATE 命令的性能,它总是超过对所有行执行的DELETE 命令,因为它跳过了表操作中涉及的DML操作。

语法:

truncate table table_name

下面看个例子:删除名为b的表

4、三种方法的区别

drop table truncate table delete table
删除表中所有数据并销毁表本身的 SQL 语句 从表中删除数据行的 SQL 语句 从表中删除数据行的 SQL 语句
它是一个数据定义语言 (DDL) 语句 它是一个数据定义语言 (DDL) 语句 它是一个数据操作语言 (DML) 语句
不能使用 WHERE 条件 不能使用 WHERE 条件 可以使用 WHERE 条件
无法执行回滚操作来撤消 DROP 表语句 无法执行回滚操作来撤消 TRUNCATE 表语句 可以执行回滚操作来撤消 DELETE 表语句
表及其所有关系、索引、权限等将被永久删除 表行被永久删除 表行不会被永久删除

mysql 之 删除数据表的方法相关推荐

  1. MySQL中删除所有表的方法

    MySQL删除数据库中所有表的方法: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 -- 切换到 ...

  2. java mysql 清空表_MySQL 删除数据表

    MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...

  3. 《零基础》MySQL删除数据表(十)

    MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TABLE table_nam ...

  4. MySQL(11)--- 删除数据表

    MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...

  5. mysql删除表单挑数据_MySQL 删除数据表

    MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...

  6. 查看mysql 表 被人删除_MySQL 删除数据表

    MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...

  7. mysql 删除表 命令_MySQL 删除数据表

    MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...

  8. mysql删除表里面姓王的人_MySQL 删除数据表_mysql删除数据表命令_DROP TABLE table_name...

    MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...

  9. mysql 命令执行drop 命令_(笔记)Mysql命令drop table:删除数据表

    drop table命令用于删除数据表. drop table命令格式:drop table ; 例如,删除表名为 MyClass 的表: mysql> drop table MyClass; ...

最新文章

  1. 前去哪儿产品总监白羽:做SaaS产品需要注意哪些坑?
  2. android imagebutton 按下效果,Android 点击ImageButton时有“按下”的效果的实现
  3. hive 运行命令后FAILED: Execution Error, return code 137 from org.apache.hadoop.hive.ql.ex ec.mr.MapredLoc
  4. mac os域名解析处理 清缓存 映射
  5. 美国科技股昨日普遍下跌:华尔街受特朗普影响抛售科技股票
  6. 音频文件如何转换成文字?
  7. 使用R进行文本数据挖掘
  8. VMware虚拟机nat模式详解
  9. 苹果ios签名过期了,APP应用还能照常使用吗?
  10. 关于无损APE,FLAC转AAC的小技巧
  11. android 采集音频输出,Android系统分析之Audio音频流, 音频策略, 输出设备之间的关系...
  12. IP查询和IPv6查询接口
  13. 【大数据分析专业毕设之基于python爬虫的电影票房大数据预测分析+大屏可视化分析
  14. 2.13黑马培训日记
  15. 计算机专业英语简介模板,计算机专业英文简历模版
  16. 常用spaceclaim脚本(二)
  17. centos7编译安装mysql5.7
  18. Imba的SqlHelper
  19. VB6实现动态增加和删除控件数组中的控件2021-06-02
  20. 0x000000f怎么修复 win10_win10系统提示错误代码0xc000000f的三种解决方法

热门文章

  1. nginx 重启失败一、
  2. 补充switch语句的内容和逗号运算符(C语言case后没有break的switch语句,会继续执行后面的语句再退出)
  3. ARMini震醒Wakefield展会
  4. 树莓派4B ubuntu20.04 UART 多串口配置通信
  5. true是什么类型java_JAVA数据类型
  6. SSM框架过滤器和拦截器
  7. Oracle默认端口清单
  8. chatgpt实际是怎样工作的?
  9. 智能小车c语言pid算法,智能小车pid算法
  10. uni-app技术分享| uni-app转小程序_实时音视频