mysql 之 删除数据表的方法
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 之 删除数据表的方法相关推荐
- 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 -- 切换到 ...
- java mysql 清空表_MySQL 删除数据表
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...
- 《零基础》MySQL删除数据表(十)
MySQL中删除数据表是非常容易操作的,但是你在进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TABLE table_nam ...
- MySQL(11)--- 删除数据表
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...
- mysql删除表单挑数据_MySQL 删除数据表
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...
- 查看mysql 表 被人删除_MySQL 删除数据表
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...
- mysql 删除表 命令_MySQL 删除数据表
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...
- mysql删除表里面姓王的人_MySQL 删除数据表_mysql删除数据表命令_DROP TABLE table_name...
MySQL 删除数据表 MySQL中删除数据表是非常容易操作的, 但是你再进行删除表操作时要非常小心,因为执行删除命令后所有数据都会消失. 语法 以下为删除MySQL数据表的通用语法: DROP TA ...
- mysql 命令执行drop 命令_(笔记)Mysql命令drop table:删除数据表
drop table命令用于删除数据表. drop table命令格式:drop table ; 例如,删除表名为 MyClass 的表: mysql> drop table MyClass; ...
最新文章
- 前去哪儿产品总监白羽:做SaaS产品需要注意哪些坑?
- android imagebutton 按下效果,Android 点击ImageButton时有“按下”的效果的实现
- hive 运行命令后FAILED: Execution Error, return code 137 from org.apache.hadoop.hive.ql.ex ec.mr.MapredLoc
- mac os域名解析处理 清缓存 映射
- 美国科技股昨日普遍下跌:华尔街受特朗普影响抛售科技股票
- 音频文件如何转换成文字?
- 使用R进行文本数据挖掘
- VMware虚拟机nat模式详解
- 苹果ios签名过期了,APP应用还能照常使用吗?
- 关于无损APE,FLAC转AAC的小技巧
- android 采集音频输出,Android系统分析之Audio音频流, 音频策略, 输出设备之间的关系...
- IP查询和IPv6查询接口
- 【大数据分析专业毕设之基于python爬虫的电影票房大数据预测分析+大屏可视化分析
- 2.13黑马培训日记
- 计算机专业英语简介模板,计算机专业英文简历模版
- 常用spaceclaim脚本(二)
- centos7编译安装mysql5.7
- Imba的SqlHelper
- VB6实现动态增加和删除控件数组中的控件2021-06-02
- 0x000000f怎么修复 win10_win10系统提示错误代码0xc000000f的三种解决方法