2013-02-01 113 views
1

如果我有一个SQLite表,我在其中间删除了一行,它会删除该行,但编号是关闭的。例如,去掉我怎样才能重新编号,使其汽车关键递增密钥ID的第4排如何在删除一行后删除表中的关键ID编号,SQLite数据库Android

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

是出连续的在上面的表中缺少4样的?

一个想法是删除所有的关键行ID并重新插入for循环。不知道是否应该尝试,因为它是自动增量。另一种可能是让它不自动增量,并且在表格被制作时使用循环来放入数字。

回答

2

你已经回答了你自己的问题:这是一个AUTOINCREMENT字段,所以你不能这样做。此外,这不是在SQL中应该如何使用IDS。他们要唯一标识一行,如果你改变了id,那么你打破了这一点,以及任何可能对该id的引用。

+3

您应该另外添加一列,例如nameID,并使用它。 – Simon