Mysql如何使自增字段重新计算?

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

在实际开发的过程中,我们为了方便,也为了设置主键和索引方便,通常会设置id为自动类型,即自动增长类型。

这一点非常常见,是一个新手必学的知识,在所有数据(ACCESS\SQL SERVER\MYSQL\SQLITE\ORACLE)等数据库中这一潜规则被广泛的应用。但碍于篇幅所限,本文着重讲述mysql。

该字段详细记录了该列的唯一恒定值,也因此,我们删除该列之后,该列的字段值也就永远的失去了,包括这个自增的。

也是就说,假设数据库中有1-100的id值,假如我们删除了99.那么数据库中就是97-98-100.

即没有了99.

即使你全部清空数据表也依然如此、这在某些时候给我们造成了极大的不方便。

如何才能让这个字段自动从1开始自动递增呢?

1 清空所有数据,将自增去掉,存盘,在加上自增,存盘,就从1开始了

2 truncate table 你的表名

这样不但将清除数据,而且可以重新位置identity属性的字段

看到这里有的童鞋就要骂了,说数据都清空了我都不能删掉表再建吗?还用你说?

实际上这也是一种方法。

但接下来我要说的才是重中之重,即如果保留原有数据?

方法如下:

1,我们在执行truncate之前,先进入mysql管理工具(如phpmyadmin等),导出数据为sql格式。

2。执行truncate table 你的表名

3,再进入mysql管理工具(如phpmyadmin等),导入数据。

然后你再打开,怎么样?是不是完美的实现了你的要求?

有这方面需求的童鞋,赶紧去看看吧!










本文转自 OH51888 51CTO博客,原文链接:http://blog.51cto.com/rozbo/1255519,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
21天前
|
关系型数据库 MySQL
mysql增加修改删除字段
mysql增加修改删除字段
12 0
|
2月前
|
关系型数据库 MySQL 数据库
MySQL时间字段设置自动更新
MySQL时间字段设置自动更新
26 0
|
2月前
|
存储 关系型数据库 MySQL
如何在MySQL现有表中添加自增ID?
如何在MySQL现有表中添加自增ID?
117 5
如何在MySQL现有表中添加自增ID?
|
2月前
|
SQL 关系型数据库 MySQL
MySQL 用gourp by分组后取某一字段最大值
MySQL 用gourp by分组后取某一字段最大值
|
3月前
|
SQL 关系型数据库 MySQL
学习MySQL中DDL语句的修改字段与删除字段,删除表
学习MySQL中DDL语句的修改字段与删除字段,删除表
|
3月前
|
关系型数据库 MySQL 分布式数据库
PolarDB MySQL版标准版计算节点规格详解
PolarDB MySQL版标准版计算节点规格详解
117 1
|
16天前
|
存储 关系型数据库 MySQL
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
|
4天前
|
关系型数据库 MySQL
MySQL全局库表查询准确定位字段
information_schema.COLUMNS 详细信息查询
183 4
|
11天前
|
SQL 存储 关系型数据库
【mysql】将逗号分割的字段内容转换为多行并group by
【mysql】将逗号分割的字段内容转换为多行并group by
|
23天前
|
SQL 关系型数据库 MySQL
Mysql数据库一个表字段中存了id,并以逗号分隔,id对应的详细信息在另一个表中
Mysql数据库一个表字段中存了id,并以逗号分隔,id对应的详细信息在另一个表中
9 0