1

途中で1行を削除するSQLiteテーブルがある場合、その行は削除されますが、番号付けはオフです。例、行 4 を削除

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

上記の表のように、キーの自動インクリメントされたキー ID が 4 を欠落することなく連続するように、番号付けをリセットするにはどうすればよいですか?

1 つのアイデアは、すべてのキー行 ID を削除し、それらを for ループに再挿入することです。自動インクリメントであるため、それを試す必要があるかどうかわかりません。もう1つの可能性は、自動インクリメントではなく、ループを使用してテーブルが作成されたときに数値を入れることです。

4

1 に答える 1

2

あなたはすでにあなた自身の質問に答えました:それはAUTOINCREMENTフィールドなので、それはできません。さらに、これは SQL で ID を使用する方法ではありません。それらは行を一意に識別するためのものであり、ID を変更すると、その ID への参照と同様に、それが壊れます。

于 2013-02-01T06:55:20.663 に答える