gpt4 book ai didi

mysql - 如何在整个删除操作中保持表字段值连续增长?

转载 作者:太空宇宙 更新时间:2023-11-03 10:24:15 25 4
gpt4 key购买 nike

我正在处理数据库中的一个表,该表的主键字段为 numeric int 值。

CREATE TABLE 'table' (
'primary_key_field' INT NOT NULL
'other_fields' ....
PRIMARY KEY ( 'primary_key_field' )
)

当我插入一个新元素时,id 值设置为自动递增。

我的问题是,当我删除元素并插入新元素时,id 值的顺序不再连续,而是有漏洞。

例如:如果我删除键字段值为 3 和 6 的元素,则值将为:

1,2,4,5,7,..等等..

有没有办法让元素保持正确的顺序?

例如:这样当我删除字段值为 3 的表元素时,字段值为 4 的元素会自动将其值更新为 3 等等所有其他元素?

在此先感谢您的帮助!

最佳答案

除非您自己编写查询,否则没有主流的 RBDMS 支持它。

  • 自动编号/标识列应该没有任何意义或外部值
  • 外键需要更新
  • 历史表跟踪原始值:在您的示例中删除新的 id 3 存在冲突

如果您需要一个连续的数字来读取,那么您需要 ROW_NUMBER 或 MySQL 等效项。

关于mysql - 如何在整个删除操作中保持表字段值连续增长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7625903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com