gpt4 book ai didi

mysql - 自动增量值遗留/低于实际值

转载 作者:行者123 更新时间:2023-11-29 07:29:42 25 4
gpt4 key购买 nike

是否有可能在某个时候,表的 ID 高于当前的 AUTO_INCREMENT 值?

我有一个像队列一样工作的表。我每秒插入/删除 10-30 行,需要自动递增列才能继续。当我现在插入行时,我得到一个回收的自动增量 (id),例如:374097

这是表格:

CREATE TABLE `test_table` (
`id` INT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`)
COLLATE='utf8_bin'
ENGINE=InnoDB
AUTO_INCREMENT=374098;

还有另一个表使用此 id 作为外键。

SELECT max(batch_id) from secondary_table;

返回:397959在某些时候,test_table 的 ID 高达 397959,而 AUTO_INCREMENT 则低得多!

我在 https://dev.mysql.com/doc/refman/8.0/en/replication-features-auto-increment.html 上读到过这个我应该是安全的 - AUTO_INCREMENT 设置在一个简单的主键上。

我是否可以像这样继续使用 AUTO_INCREMENT,或者我是否需要使用自己提供的 ID?我知道吗?

最佳答案

您可以保持自动递增:您只需将第一个表上的自动递增值更新为最大值 + 1

ALTER TABLE test_table AUTO_INCREMENT = 397959 + 1

关于mysql - 自动增量值遗留/低于实际值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52035616/

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