1

如果我有一个 SQLite 表,我在其中删除了一行,它会删除该行,但编号已关闭。例如,删除第 4 行

 id   name
 1     A
 2     B
 3     C
 5     E
 6     F

如何重置编号,以便密钥自动递增的密钥 ID 是连续的,而没有上表中缺少的 4?

一种想法是删除所有关键行 id 并将它们重新插入到 for 循环中。不知道我是否应该尝试,因为它是自动递增的。另一种可能性是使其不自动递增,并在表被装箱时使用循环将数字放入。

4

1 回答 1

2

你已经回答了你自己的问题:这是一个AUTOINCREMENT领域,所以你不能那样做。此外,无论如何,这不是应该在 SQL 中使用 id 的方式。它们将唯一标识一行,如果您更改 id,那么您将破坏它,以及可能对该 id 的任何引用。

于 2013-02-01T06:55:20.663 回答