mysql+php删除表中的行时,如何更新自动递增的id?

rdlzhqv9  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(302)
$q = "DELETE FROM newfiles WHERE id=$id LIMIT 1;";
 $q .= "SET @i=0;";
 $q .= "UPDATE newfiles SET id=(@i +:=1)";

例:我有6排
1 2 3 4 5 6当我删除第4行时,我希望第5行变成4和6到5

nwnhqdif

nwnhqdif1#

一般来说,这不是一个好的做法。但你可以这样试试。这会有用的。

$q = "SET @id = $id;";
$q .= "DELETE FROM newfiles WHERE id = @id;";
$q .= "UPDATE newfiles SET id = id-1 WHERE id > @id;";

相关问题