当前位置:网站首页>MySQL 删除表数据,重置自增 id 为 0 的两个方式
MySQL 删除表数据,重置自增 id 为 0 的两个方式
2022-08-03 04:08:00 【m0_54853503】
MySQL 删除表数据,重置自增 id 为 0 的两个方式:
1、truncate table table_name;
truncate table `user`;
2、delete 配合 alter 语句
delete from table_name;
alter table table_nameAUTO_INCREMENT=0;
delete from `user`;
alter table `user` AUTO_INCREMENT=0;
本来还有一种 delete 配合 dbcc 的方式,但是我执行 dbcc 命令时一直提示一个语法问题,还没解决,这里就不推荐了。
drop、truncate、delete的对比分析
下面是对drop、truncate、delete的对比分析, 以下内容转自: MySQL删除语句比较,清空表数据,重置自增长索引
drop truncate delete 删除彻底程度从强到弱,删除速度从快到慢。
1、drop table `user`
drop将整个表直接删除,是删表,不是删除表里的数据,表被删除后,表和数据没有办法找回
2、truncate (table)`user`
truncate 删除表中的所有数据,不能与where一起使用。且会重置索引(自增长重新id从零开始)
3、delete from`user` (where)
delete 删除表中的数据(可制定某一行),不指定某一行则删除全表数据,隐式删除,可以回滚,逐行删除,删除速度慢。
truncate和delete的区别
① **事务:**truncate是不可以rollback的,但是delete是可以rollback的;
原因:truncate删除整表数据,无事务日志,不可恢复,delete是一行一行的删除,每行删除记录都有日志,可以rollback
② **效果:**truncate删除后将重置索引(自增长id从零开始) , delete不会删除索引,但是delete 配合 alter 语句可以实现索引的重置,也就是自增 id 的重置。
③ truncate 不能触发任何Delete触发器。
④ delete 删除可以返回行数
————————————————
版权声明:本文为CSDN博主「NFA_YY」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/nfa_yy/article/details/73613515
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
随机推荐
WinForm(二):WinFrom中Main函数的入参和出参
ESP8266-Arduino编程实例-MCP3008-ADC转换器驱动
online test paper concept
Mysql如何建立索引实现语句优化
C# WPF设备监控软件(经典)-上篇
软件测试个人求职简历该怎么写,模板在这里
9 椭圆曲线密码体制
中断系统需要解决的问题
2022中国五金制品行业发展前景分析
基于flowable的upp(统一流程平台)运行性能优化(3)
这个困扰程序员50年的问题,终于要被解决了?
v-on指令:为元素绑定事件
正则表达式与绕过案例
The flink sql task is changed, and after adding several fields to the sql, an error occurs when restoring from the previously saved savepoint.
DMA 的工作方式
一文了解SAP IBP是什么?
【翻译】开发与生产中的Kubernetes修复成本对比
(2022牛客多校五)H-Cutting Papers(签到)
钢铁电商行业方案:钢铁工业产品全生命周期管理解决方案
vscode hide activity bar








