如何将我的表的自动增量 id 设置为 700,即使同一张表上存在 1000 条记录?
Posted
技术标签:
【中文标题】如何将我的表的自动增量 id 设置为 700,即使同一张表上存在 1000 条记录?【英文标题】:How can I set auto increment id as 700 for my table even 1000 records existing on the same table? 【发布时间】:2017-11-14 19:51:02 【问题描述】:我需要将自动增量 id (700) 设置为小于表的最后一个 id (Last Id : 1202)。我的桌子上有近 1202 条记录。我只需要知道是否有可能将自动增量值设置为小于最后一个 id?
如果我将 700 设置为我的自动增量 ID,那么表上现有的第 700 条记录会发生什么?
我正在使用 mysql 数据库。请给我一个想法或建议。
提前致谢。
【问题讨论】:
如果表中存在 id 介于 700 和 1202 之间的任何行,则会出现约束冲突错误。这样做的目的是什么? @DarshanMehta 实际上我使用了数字(例如:700 和 1202)。真的,我的表中有 6 万条记录。目前,表的 id 越来越难以识别并且越来越大。所以我只需要一种方法来最小化 id 数字。 您没有充分的理由要这样做 @Strawberry 是的,可能是。但我不是决定这一点的所有者。我是开发者。我只是想让我的客户满意我能做到多少。 作为您的客户,如果您向我提供的东西违反了合理的 RDBMS 流程,我会非常沮丧。 【参考方案1】:不,您不能将自动递增列值设置为表中已存在的值。因为这是违反规则的。尝试这样做会显示constraint violation error
,这也不合逻辑。
【讨论】:
以上是关于如何将我的表的自动增量 id 设置为 700,即使同一张表上存在 1000 条记录?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Visual Studio 在 MySQL 中已经存在的表上将列设置为自动增量 [重复]
当与模型链接的表为非自动增量时,Laravel 模型获取下一个增量 ID