欢迎投稿

今日深度:

mysql数据库id主键自增加删除后不连续如何解决,

mysql数据库id主键自增加删除后不连续如何解决,


目录
  • mysql数据库id主键自增加删除后不连续
    • 解决问题的思路
    • 用到的方法
  • vite动态导入页面动态import组件
    • 问题
    • 解决方法
  • 总结

    mysql数据库id主键自增加删除后不连续

    在主键id删除某一条后,再次添加,删除的id不会使用,这是为了主键的唯一性,但是在程序中可能会出现问题,导致前后端不统一。

    解决问题的思路

    修改开始自增加的id,从而让自增加开始于你设置的值

    用到的方法

    alter table category auto_increment = 100

    100为举例值,实际值看你自己

    举例:

    tp5

    //先用max方法获取当前最大的id,然后加1,保存为变量
    $max_id = DB::name('category') ->max('category_id');
    //id+1
    $max_id++;
    //重置自动增加为当前最大值加1
    DB::execute("alter table category auto_increment=".$max_id);

    vite动态导入页面动态import组件

    问题

    之前数据库数据量太大,导致后期数据库使用时id数目太大,因此需要重新修改表的id大小

    解决方法

    第一种:

    本人使用heidisql 可直接通过操作页面修改下一个自增id的值,如下图修改保存即可

    第二种:

    通过命令行处理  :alter table 表名 AUTO_INCREMENT=11;  一行命令直接搞定。

    但要注意如果使用了mybatis的主键自增策略,就要做相应设置了,设成与数据库相对应的自增策略

    重点!!! 重点!!!!   

    其中修改的原则为:如果id值大于当前表的最大id,则设置无法生效。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持PHP之友。

    您可能感兴趣的文章:
    • MySQL不推荐使用uuid或者雪花id作为主键的原因分析
    • MYSQL数据插入之返回自增主键ID的方法详解
    • Mysql如何设置表主键id从1开始递增
    • mysql创建表设置表主键id从1开始自增的解决方案
    • MySql主键id不推荐使用UUID的原因分析

    www.htsjk.Com true http://www.htsjk.com/Mysql/47821.html NewsArticle mysql数据库id主键自增加删除后不连续如何解决, 目录 mysql数据库id主键自增加删除后不连续 解决问题的思路 用到的方法 vite动态导入页面动态import组件 问题 解决方法 总结 mysql数据库...
    评论暂时关闭