MYSQL 删除命令 delete、truncate 、drop

目录

一、delete

二、truncate

三、drop

四、delete,drop,truncate的区别


一、delete

作用:仅仅删除表数据,表结构保留,数据能回滚

命令格式

复制代码
#删除全部数据
delete from 表名;

#删除表中id为1的数据,其他的保留
delete from 表名 where id(字段名) =1;

#按排序删除数据,删除升序前10条数据
delete FROM 表名 order by 字段名 limit 10

#关联表后删除数据
deletea from 表名1 as a left join 表名2 as b on a.id = b.id where b.cid > 10;

二、truncate

作用:仅仅删除表数据,表结构保留,数据不能回滚

命令格式

复制代码
truncate table 表名;

三、drop

作用:表数据和表结构一起删除,数据不能回滚

命令格式

复制代码
#删除表
drop table 表名;

#删除数据库
drop database 数据库名;

alter

alter是drop的分支

复制代码
#用于删除表中的列
alter table 表名 drop column 字段名;

#用于删除表中的索引
alter table 表名 drop index 索引名;

​​​​​​​​​​​​​​四、delete,drop,truncate的区别

  • delete 和 truncate 仅仅删除表数据,drop 连表数据和表结构一起删除。

  • delete 是 DML 语句,操作完以后如果不想提交事务还可以回滚,truncate 和 drop 是 DDL语句,操作完马上生效,不能回滚。

  • 执行的速度上,drop>truncate>delete。

相关推荐
刘胡子大叔22 分钟前
SQL 脚本的导入顺序
数据库·sql
代码什么用1 小时前
Spring对IoC的实现
数据库·spring
运维行者_1 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
此时不提桶,更待何时1 小时前
06-14-A-Kafka集群运维与迁移实战详解
运维·kafka
hz567893 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
广州浮点FLOATLIC3 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
程序员Sunday3 小时前
MySQL 为什么使用 B+ 树索引?把范围查询、回表和覆盖索引连起来
数据库·mysql
IT研究所3 小时前
AI-ITR平台如何减少客户问题反复升级?
大数据·运维·人工智能·低代码·自然语言处理·安全架构·企微
半杯咖啡半行码3 小时前
Qt开发实战:数据库、MV 模式、QProcess与串口通信全攻略
数据库·qt
AIgorithmGEEK3 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化