您现在的位置是:技术博客 > 数据库数据库 mysql重置主键id Lucas2024-11-13 18:48【代码】13人已围观 简介假设现在有一张user表,由于人为修改或者删除了其中某些记录,造成主键id的值不连续,那么如何这个user表的主键呢? #### 假设现在有一张user表,由于人为修改或者删除了其中某些记录,造成主键id的值不连续,那么如何这个user表的主键呢? 解决方法是,创建一个新字段new_id,处理好值以后,删除就id,然后重命名new_id为id,最后修改为主键自增即可。 真实使用时,注意替换下面sql中的user、id、new_id字段名为真实值。 ``` # 1、添加一个新列用于存储新的自增ID ALTER TABLE `user` ADD COLUMN `new_id` int(10) UNSIGNED NOT NULL DEFAULT 0; # 2、初始化new_id列 SET @new_id = 0; UPDATE `user` SET new_id = (@new_id:=@new_id + 1) WHERE `user`.id > 0 ORDER BY `user`.id; # 3、删除旧的主键列 ALTER TABLE `user` DROP `id`; # 4、将新列重命名为原来的id ALTER TABLE `user` CHANGE `new_id` `id` int(10) UNSIGNED NOT NULL DEFAULT 0 FIRST; # 5、 将id设为主键自增 ALTER TABLE `user` MODIFY COLUMN `id` int(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY; ``` 转载:感谢您对Lucas个人博客网站平台的认可,非常欢迎各位朋友分享到个人站长或者朋友圈,但转载请说明文章出处“来源Lucas个人博客”。 很赞哦! ( 0 ) 上一篇:MYSQL优化 下一篇:没有了! 相关文章 常用的SQL函数 页面可视化数据表结构 存储过程函数 mysql连表查询 点击排行 生活不止眼前的苟且,还有诗和远方 十年一觉电影梦 奥地利基茨比厄尔 禅修治愈身心 自律成就自我 零边际成本社会 Modern PHP 鸟哥的Linux私房菜 本栏推荐 要技术,更要有创意 定时任务 Curl无法发送https请求 Lnmp环境搭建 常用的SQL函数 Windows的cmd指令 ueditor工具栏浮动bug 有趣的js插件 标签云 git laravel swoole javascript vue ajax html css sql linux docker flask django nginx apache thinkphp markdown sublime wechat layui photoshop nodejs mysql windows composer java maven springboot mybatis IDE 猜你喜欢 Swoole 基础篇一(初识) PHP进程管理器 正则的快速上手 Sublime代码格式化 Lnmp环境搭建 高并发库存防控超量 Linux之top命令 常用的SQL函数 站点信息 建站时间:2018-05-01 在线人数:1人 文章统计:263篇 总浏览量:222565次 统计数据:百度统计 个人信息:扫描二维码查看