[英]Java MySQL updating rows when deleting a row
我有一個帶有AUTO_INCREMENTING id列和name列的數據庫。 如果我從數據中刪除一行,我想更新所有其他行的id,以便該順序再次正確,那么我很失落,請幫助我。
我嘗試了這個:
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT COUNT(id) FROM " + table_name_products);
int count = 0;
while(rs.next()){
count = rs.getInt("COUNT(id)");
}
stmt = conn.createStatement();
for(int i = 1; i <= count; i++){
if(i > id){
stmt.addBatch("UPDATE " + table_name_products + " SET id = "+ i-- +" WHERE id = "+ i +";");
}
}
我認為這是不可能的。
我認為唯一的解決方案是在刪除某處之后緩存所有行,刪除這些行,然后將緩存的行再次添加到表中。
可能會有數據庫管理命令來執行此操作,但是您不希望在每次刪除后都執行此操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.