如果你有一张表,你的主键是ID,然后由于测来测去的原因,你的ID不是从1开始连续的自增了。

终于有一天,使用这张表的某个系统要导入正式数据了,强迫症这时候就表现的明显了,浑身不自在,

这时候你就需要将这个主键ID重置一波了,方法是在这张表中新增一个字段,将ID里面的数据复制过去,

然后删除ID字段,接着新建一个ID字段,再接着将id字段自增且设为主键,最后将这个新增的ID列挪到第一列,

将那个用于复制最初ID内容的新增字段删除,一切OK.

1、在要操作的表 tablename 中新增一个字段 old_id;

alter table  tablename  add old_id int(10) not null;

2、将 id 字段的数据复制给 old_id;

update tablename set old_id=id;

3、删除 id 字段;

  alter table tablename drop id;

4、新增一个 id 字段;

  alter table tablename add id int(10) not null;

5、将这个新增的 id 字段设置为自增主键;

  alter table tablename modify column id int(10) not null auto_increment, add primary key (id);

6、删除 old_id 列;

  alter table tablename drop column old_id;

7、将最新的 id 列挪到最前面;

  alter table tablename modify id int(10) first;

转载于:https://www.cnblogs.com/Man-Dream-Necessary/p/6739816.html

将一张表的主键(ID)重置为从1开始自增排列相关推荐

  1. 将一张表的主键作为外键关联到另一张表中

    将一张表的主键作为外键关联到另一张表中 1.外键的介绍 2.使用Navicat创建外键 3.外键的维护关系设定及其选择 1.外键的介绍 设置外键的作用很明显,就是讲两个表的数据产生关联,就比如个人信息 ...

  2. oracle查询一张表的主键,Oracle查询表主键、外键

    Oracle查询表主键.外键 1. 查找表的所有索引(包括索引名,类型,构成列) select t.*,i.index_type from user_ind_columns t,user_indexe ...

  3. MYSQL自增主键ID重置

    MYSQL在创建一个带有自增主键ID的表时,通常在删除数据时,导致自增主键不连续了.使用下面的SQL脚本可以重置主键. -- 1.重置已有数据主键 SET @rownum = 0; UPDATE ta ...

  4. MySQL库表主键ID耗尽了,如何处理?

    大家好,我是后端研究所大白所长! 今天和大家聊一个有趣的话题: 假如MySQL建表时主键ID是int32且自增的,谁也没想到业务发展这么快,今天忽然发现ID耗尽了,各种报警要炸锅了,请求作为后端own ...

  5. oracle ora 02437,给表追加主键-----报错ORA-02437: 无法验证 (DENGCHAO.TEST) - 违反主键

    由于 这次 项目 做了 数据库 迁移(从 mysql 转到oracle  用的是navicat) 的工具  所以导致很多主键都丢失了 导致数据库很多 数据的id重复  导致系统修改一条数据的时候 出现 ...

  6. Oracle使用序列触发器实现主键id自动增长

    记录一下oracle中的字段自增问题 在mysql中我们可以使用auto_increment来实现自动增长功能 而在oracle主键没有自动增长类型,所以一般使用序列产生的值作为某张表的主键,实现主键 ...

  7. 数据库重置主键id从1开始

    清空表数据并让主键从1开始(仅用于工作记录) 如果使用 navicat ,右键表名,其中清空表和截断表的区别是: 清空表清空表数据,新增数据时,主键仍然从未删除之前的最后一条数据开始增加. 截断表清空 ...

  8. 分库分表的 9种分布式主键ID 生成方案

    <sharding-jdbc 分库分表的 4种分片策略> 中我们介绍了 sharding-jdbc 4种分片策略的使用场景,可以满足基础的分片功能开发,这篇我们来看看分库分表后,应该如何为 ...

  9. 关于数据表设计的问题, 是主键 id 作为关联, 还是其他的唯一字段?

    假设有业务需求,需要设计三张表user,order,goods order关联user,goods关联order 第一种情况:使用数据库表的主键做业务关联,order表存user_id,goods表存 ...

最新文章

  1. java高并发编程(二)
  2. 市场与需求带动 向智能安放转型成大势所趋
  3. 在Forge Viewer上显示自订义属性
  4. 重磅官宣:Nacos2.0性能提升10倍
  5. WinForm读取指定的config文件的内容
  6. Java基础篇(04):日期与时间API用法详解
  7. mybatis 一对一、一对多查询、多对多(使用注解)
  8. LeetCode #1349. 参加考试的最大学生数 - 学到了:压缩状态动态规划、位运算、reduce()、str().count()
  9. 华为HG255d刷石像鬼OpenWrt,体验强大的QOS功能
  10. 这五款办公神器一个比一个好用
  11. 【测控电路】信号放大电路 误差, 噪声, 差动放大, 高共模抑制比, 低漂移, 高输入阻抗, 电桥放大
  12. Visual Studio 番茄助手 安装问题
  13. Python可视化--条形图
  14. 2022-清华管理学-清华大学-宁向东
  15. Java实现 LeetCode 41 缺失的第一个正数
  16. 为什么a标签不能设置宽高?
  17. 如何让novnc/websockify支持tls1.2 (by quqi99)
  18. linux内核ppt刘小明,【陈老师华为北研所讲座PPT】从机制与策略探究Linux内核设计之道(4)...
  19. Linux常用库函数
  20. flash图片如何镜像翻转_在canvas上实现元素图片镜像翻转动画效果的方法

热门文章

  1. 六种方法,做一名更好的开发者
  2. http --- 路由器缓存与常见的状态码
  3. Saltstack的pillar组件(6)
  4. 快速上手Ubuntu搭建Python编程环境
  5. 大数据初探——Hadoop历史
  6. SimpleDateFormat解析的时候字符串过长问题
  7. php结合jquery异步上传图片(ajaxSubmit)
  8. java线程之基础学习
  9. 2012.12.26日学习笔记
  10. 4. 用MVC实现URL路由