Java重置Mysql主键自增长值

MySql 主键自增重置器(统一处理多个表)

resetAutoincrement 是一款基于 Java 开发的程序,其功能为重置 mysql 数据库表的主键自增的值为最近的一个。

介绍

开发背景主要是工作中,测试同学在清理数据的时候,使用的是 DELETE 进行删库(其实可以使用 TRUNCATE),删库完毕后会造成主键自增的值并没有归0,而是继续计算下去(如:数据库新插入一条数据,id483 ,但是我期望的是从 1 开始),作为有点略微强迫症的小开发,我就在思考能否写一个程序来重置 Mysqlauto_increment 值,于是乎写了这个 Java 程序。

项目地址

吃茫茫/resetAutoincrement

环境说明

  • JDK:1.8
  • MySql:5.7

程序演示

视频网站 地址
哔哩哔哩 https://www.bilibili.com/video/av84268614
Youtube https://youtu.be/cd724k13Z5I

目录结构

.  
├── actuator      该目录下存放执行器接口及其实现类,整个程序的核心实现  
├── config        数据库链接的配置信息存放于此,也可以使用properties配置文件替换  
├── exception     异常类存放于此  
├── pojo          实体类存放于此   
├── run           整个程序的启动目录,执行`main`即可启动程序   
└── validation    该目录下存放校验类的信息,目前只写了一个校验数据库连接配置信息的类  

使用说明

  1. 本人测试的数据库demo sql语句
CREATE TABLE `demo` (
  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT '主键',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='demo数据库';

CREATE TABLE `demo02` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `remarks` varchar(32) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='demo02数据库';
  1. config目录下配置好数据库的连接信息
  2. run目录下启动main方法即可执行

联系作者

猜你喜欢

转载自www.cnblogs.com/chimmhuang/p/12682769.html