2017-12-04 13 views
1

データ型がINTEGER PRIMARY KEY AUTOINCREMENTの列を持つSqliteテーブルを持っているとしましょう。 IDを持つ行を追加すると、その行を削除すると別の行を追加するidは1ではなく2になるSqliteプライマリIdをリセットする方法

行を削除すると、どのようにIDを減らすことができますか?

は、テーブルを編集して、そのように動作することを意図していますので、あなたは、手動、自動インクリメントIDを微調整することはできません

+0

行が削除されるたびにIDを減らす必要がある場合は、おそらく 'autoincrement'オプションがあなたのケースに適した解決策ではないでしょう。あなたが必要とするものを実現するために[この回答](https://stackoverflow.com/a/29528936/2910520)を読んでください – MatPag

答えて

0

ありがとうございます。もしそれが前後することができれば、そのIDが一意であると主張することはできません。

あなたが現在持っている最高のオプションは以下のとおりです。

  1. はあなたの例99.999%のためのあなたの一意性の問題が解決され、代わりにGUIDを使用してください。
  2. 手動で入力したの注文をフィールドに追加します。このフィールドを個別に使用して、使用する番号を計算することができます。
  3. テーブルを切り捨てます。これを行うと、テーブルのIDはリセットされますが、データは失われます。
関連する問題