我对iphone编程很新。我想要一些信息。这是我的数据库的结构:
ID_song : auto-int (primary key)
txt_song : text
当我们从表视图中删除一些数据时,以及从SQLite数据库中删除数据时,假设我的数据库中只有3首歌曲
id_song:1 txt_song:Song_A
id_song:2 txt_song:Song_B <------ (To be deleted)
id_song:3 txt_song:Song_C
删除行后,表中的数据是否为:
id_song:1 txt_song:Song_A
id_song:3 txt_song:Song_C
或
id_song:1 txt_song:Song_A
id_song:2 txt_song:Song_C
我的意思是,sqlite会重组索引吗?
答案 0 :(得分:2)
为什么会这样做? 首先,这可能会造成巨大的性能损失,并且存在违反数据完整性的真正风险。 更改主键意味着还必须更改所有相关的外键。
答案 1 :(得分:1)
不,它没有。 (你可能会在大约5分钟内通过自己尝试来解决这个问题。:))
答案 2 :(得分:1)
没有。删除行后,没有数据库会重写ID字段。如果您想为歌曲编号,您需要自己编写代码。
答案 3 :(得分:1)
看起来像
id_song:1 txt_song:Song_A
id_song:3 txt_song:Song_C