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。

相关推荐
nbsaas-boot18 分钟前
Java 正则表达式白皮书:语法详解、工程实践与常用表达式库
开发语言·python·mysql
乌托邦的逃亡者21 分钟前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
ldj202026 分钟前
Jenkins 流水线配置
运维·jenkins
sun0077003 小时前
mysql索引底层原理
数据库·mysql
古希腊数通小白(ip在学)3 小时前
stp拓扑变化分类
运维·服务器·网络·智能路由器
程序员秘密基地3 小时前
基于html,css,vue,vscode,idea,,java,springboot,mysql数据库,在线旅游,景点管理系统
java·spring boot·mysql·spring·web3
12点一刻5 小时前
搭建自动化工作流:探寻解放双手的有效方案(2)
运维·人工智能·自动化·deepseek
未来之窗软件服务5 小时前
东方仙盟AI数据中间件使用教程:开启数据交互与自动化应用新时代——仙盟创梦IDE
运维·人工智能·自动化·仙盟创梦ide·东方仙盟·阿雪技术观
workflower5 小时前
MDSE和敏捷开发相互矛盾之处:方法论本质的冲突
数据库·软件工程·敏捷流程·极限编程
叁沐5 小时前
MySQL 11 怎么给字符串字段加索引?
mysql