Last updated on 2019年3月21日

MySQL数据库中删除了一部分数据,导致自增 id 列展示很丑,逼死强迫症。

这里推荐一个列替换方法:

删除原来列,重新建立 id 列

#创建存储过程,请修改相应表参数

CREATE PROCEDURE PRO_REBUILD_ID()

BEGIN

DECLARE t_error INTEGER;

DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error = 1;

START TRANSACTION;

#1.将表里的 id 列,取消自增,取消主键

ALTER TABLE test_tab MODIFY COLUMN id INT (11) NOT NULL FIRST, DROP PRIMARY KEY;

#2.新增 id2 列,带上自增、主键。名字可以随意,别与原表重复

ALTER TABLE test_tab ADD COLUMN id2 INT (11) NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (id2);

#3.删除旧 id 列

ALTER TABLE test_tab DROP COLUMN id;

#4.将 id2 修改为 id 列

ALTER TABLE test_tab CHANGE COLUMN id2 id INT (11) NOT NULL AUTO_INCREMENT FIRST;

IF t_error = 1 THEN

ROLLBACK;

ELSE

COMMIT;

END IF;

END

注:上述代码创建了一个存储过程,直接调用即可 CALL PRO_REBUILD_ID();

如果您的表 id 与其他表有关联,请勿使用本方法随意改动,后果自负!

本文纯属强迫症患者无聊表现,部分思路源于互联网!

mysql重置id排序_列替换法重置MySQL自增长ID排序相关推荐

  1. c语言连接数据库例子,c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual help).doc...

    这是精心收集的精品经典资料,值得下载保存阅读! c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual h ...

  2. c++ sort 从大到小排序_算法的艺术:MySQL order by对各种排序算法的巧用

    在 [精华]洞悉MySQL底层架构:游走在缓冲与磁盘之间 这篇文章中,我们介绍了索引树的页面怎么加载到内存中,如何淘汰,等底层细节.这篇文章我们从比较宏观的角度来看MySQL中关键字的原理.本文,我们 ...

  3. mysql超长sql查询_超长SQL怎么查询?MySQL列长度限制有哪些 | 学步园

    MySQL字符串的限制长度看似重要性不要,其实和整个MySQL数据库的安全性是息息相关的,很值得我们去深入研究分析.SQL注入攻击一直都在被广泛的讨论,然而人们却忽略了今天我将要介绍的这两个安全隐患, ...

  4. mysql实现关注收藏_收藏|我的Mysql学习笔记

    欢迎关注我的公众号:早起Python 大家好,今天是陈熹专栏 SQL是一个存活近半个世纪的语言,如今仍有大量人在使用.它语法简单,对培养数据整理和提取的思维有很大帮助.我将我过去的笔记分享给大家,希望 ...

  5. mysql实现心跳表_第29问:MySQL 的复制心跳说它不想跳了

    问题 最近年底,大家的数据库经常跑批量大事务,会发现复制突然断开,报错"心跳与本地信息不兼容": 会是什么原因? 实验 我们先来复现一下,再进行分析. 宽油,做一对主从数据库: 我 ...

  6. mysql 2003报错_为什么不建议在 MySQL 中使用 UTF-8?

    正文 记得去年我在往MySQL存入emoji表情 时,一直出错,无法导入.后来找到办法 -- 通过把 utf8 改成 utf8mb4 就可以了,并没有深究. 一年后,我看到一篇文章讲到emoji文字占 ...

  7. c 对一个mysql数据库进行操作_用C语言操作MySQL数据库

    函数 描述 mysql_affected_rows() 返回上次UPDATE.DELETE或INSERT查询更改/删除/插入的行数. mysql_autocommit() 切换autocommit模式 ...

  8. mysql从dos界面_从DOS界面进入MYSQL数据库

    新手学习数据库,从比较简单的mysql开始.从DOS界面进入mysql数据库其实跟配置java环境变量一样,要先设置环境变量(右击我的电脑-属性-高级-环境变量). 找到mysql的安装位置,把安装目 ...

  9. mysql镜像压缩包使用_如何连接docker的mysql镜像

    展开全部 推荐使用Dockerfile方式. 服务的管理使用的是supervisord, 因为dockerfile里只会有一个cmd生效,如果我想62616964757a686964616fe5868 ...

最新文章

  1. 趣谈 23 种设计模式(多图 + 代码)
  2. 计算机组装与维护实例教程,计算机组装与维护案例教学-20210714101609.pdf-原创力文档...
  3. ibatis example Class 使用
  4. c++中的继承--1(引出,继承方式,继承的对象模型)
  5. Spring之AOP详解
  6. Apple Music成为全球第二大音乐流媒体服务 远落后Spotify
  7. linux---多线程---信号量--不懂
  8. mac黑白打印和彩色打印
  9. 详解嵌入式系统知识和接口技术总结
  10. git commit 规范不对导致报错subject may not be empty [subject-empty]type may not be empty [type-empty]
  11. 随笔小感,或许就叫一见误终身
  12. excel php 数字科学计数_PHP导出excel时数字变为科学计数的解决方法
  13. 龙蜥LoongArch架构研发全揭秘,龙芯开辟龙腾计划技术合作新范式
  14. BIOS追code之SEC phase
  15. 用pcs,gfs2,lvm2-cluster和pacemaker 搭建FNS cluster
  16. xtrabackup备份恢复MySQL数据库
  17. Swift —— 类与结构体
  18. 二级计算机的office用到哪些函数,计算机二级MS office excel中所用函数整理
  19. android studio改字体,在Android Studio中更改字体样式的不同方法有哪些
  20. Python基础学习之”基础语法5

热门文章

  1. 学会这个技能,副业加 1 万不是问题,30 本理财秘籍免费领取(速领)
  2. 用私有构造器或者枚举类型强化Singleton 属性
  3. linux KVM win虚拟机磁盘扩容(qcow2)
  4. kafka2.5.0创建主题topic命令
  5. 【收藏】Win10自带的邮件客户端配置腾讯企业邮箱账号详解
  6. Dockerfile 之 ARG指令详解及示例
  7. javahost(JVM虚拟DNS)解决hosts程序中hosts配置问题
  8. 大数据集群问题排查:时间不同步导致hbase regionserver只启动了部分节点的进程
  9. Linux 光盘的挂载和解挂
  10. Linux配置静态IP地址