我有一个类似于图像的 mysql 表,称为按摩(例如)
id | position | name
1 | 1 | name 1
2 | 2 | name 2
3 | 3 | name 3
4 | 4 | name 4
因此,当我更新、编辑或创建新记录时,我希望表格更新列位置如下。(例如,更新行 id=1,列位置从 1 到 3。)
id | position | name
1 | 3 | name 1
2 | 1 | name 2
3 | 2 | name 3
4 | 4 | name 4
我想出了如何删除一行并创建一个新行。但无法找出如何以正确的顺序更新。我正在使用这样的php代码:
---在插入语句之前mysql_query("UPDATE
按摩SET position = position + 1 WHERE position >= '$position'"); ---
,它工作正常并返回为。如果在位置 2 处插入 id=5。
id | position | name
1 | 1 | name 1
2 | 3 | name 2
3 | 4 | name 3
4 | 5 | name 4
5 | 2 | name 4
希望有人可以帮助我解决这个问题。
提前致谢。