gpt4 book ai didi

Java MySQL 在删除行时更新行

转载 作者:行者123 更新时间:2023-11-30 22:55:15 26 4
gpt4 key购买 nike

我有一个带有 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 +";");
}
}

最佳答案

我认为这是不可能的。

我认为唯一的解决方案是缓存您要删除的行之后的所有行,删除这些行,然后再次将缓存的行添加到表中。

可能有数据库管理命令来执行此操作,但您不希望在每次删除后都执行此操作。

关于Java MySQL 在删除行时更新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26689668/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com