我正在尝试在 sql 表的中间插入一个新行并首先移动所有其他行以为其腾出空间。
我试过
setting id=id+1
了,但这给了我一个错误(显然),因为该行id+1
已经存在,所以这只适用于另一个方向,所以id=id-1.
那么正确的解决方案是什么?
我正在尝试在 sql 表的中间插入一个新行并首先移动所有其他行以为其腾出空间。
我试过
setting id=id+1
了,但这给了我一个错误(显然),因为该行id+1
已经存在,所以这只适用于另一个方向,所以id=id-1.
那么正确的解决方案是什么?
要完成这些工作,您应该从最后更新您的表格:
UPDATE `table` SET `id`=`id`+1 WHERE `id`>$value ORDER BY `id` DESC
$value 是你的价值
你可以尝试这样的事情:
UPDATE table_name SET id = id + 1 WHERE id >= your_id_value ORDER BY id DESC;
INSERT INTO table_name(..., id, ...) VALUES(..., your_id_value, ...)