簡體   English   中英

SQLite Java:自動刪除項目后更新表ID

[英]SQLite Java: update table ID's after deleting item automatically

我正在使用 SQLite 存儲數據,如果我刪除最后一行,ID 為 4,然后添加一個新行,ID 為 5,它應該是 4。當嘗試查看數據時,它會崩潰,因為它可以t 從 ID 5 中查找數據。

數據庫檢查器

在數據庫檢查器中,ID 列左側是行號。 這是可訪問的,因為這可以解決問題,或者它只是 Android Studio 中的行號指示器。

謝謝你,祝你有美好的一天!

我認為您可以使用一種方法來恢復您插入的最后一個項目,或者具有較高 id 的項目,這樣您就有了下一個 id 的值,您需要將其作為額外的。 如果在沒有值時需要它,則在刪除最后一項時保存它,或重置數據庫以便重新開始 id 的計數

通過添加以下內容使其工作:

String strSQL1 = "UPDATE people_table SET id = (id +1) WHERE id < 1";
String strSQL = "UPDATE people_table SET id = (id -1) WHERE id > 1";
db.execSQL(strSQL);
db.execSQL(strSQL1);

即使我刪除了第一個和最后一個之間的某些內容,該id也會正確。 您需要從id中刪除autoincrement才能使其正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM