首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何重用auto_increment值?

如何重用auto_increment值?
EN

Stack Overflow用户
提问于 2012-03-16 19:06:35
回答 5查看 6.8K关注 0票数 8

可能重复:

Fragmentation of id's (auto_increment column) in mysql

我的数据库里有这个专栏。让我们假设它的名字是‘三重’。它包含给每个线程的唯一It以进行区分。

6 5 4 3 2 1

假设我删除了id 5和6的线程。

9 8 7 4 3 2

但是当删除后有一个提交时,给这个线程的唯一id是10。而不是5。我认为这是不整洁的。

如何在列中获得尽可能少的值?(在这种情况下,5.)

我认为我可以使用MIN()获得列的最小值,并保留+1,直到得到未使用的唯一值为止,但我认为这太复杂了。

有什么简单的方法吗?

谢谢。

EN

Stack Overflow用户

发布于 2012-03-16 19:15:53

因此,为了引用完整性,我不建议重用ids。有了int和bigint的最大限制,您就不应该用尽唯一的值。唯一的值是参考数据库的核心。

这样,您就可以运行一个搜索子例程(而不是触发器)来找到最低可用的id。然后暂时关闭标识插入,插入数据,然后打开标识插入。

有很多理由不这样做!其中包括在同时输入多个值时插入数据之间的所有潜在冲突。

票数 1
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9743121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档