有没有办法通过按钮/ javascript安排数据库中的项目顺序?
即。我在我的数据库中有第一个表,我希望能够自由地安排它。
| id | name | change to | id | name |
------------- ----> -------------
| 1 | Iris | | 1 | Lens |
| 2 | Pupil| | 2 | Iris |
| 3 | Lens | | 3 | Pupil|
如何使用箭头向上/向下按钮移动它们? 提前致谢
答案 0 :(得分:0)
根据评论:
我建议你去阅读SQL的基础知识,尝试编写一些代码来解决你的问题,然后提出一个更具体的问题。我们不能在这里的单个问题中教你SQL。
这里有一个线索:对于你想要在改变序列号方面做什么,UPDATE语句将是你想要的。单个语句可以同时对多行进行操作。所以如果你将一个项目(项目A)从位置10移动到位置2,你可以执行以下步骤:
您可以使用2个SQL UPDATE语句执行此操作,每个语句对应上述每个语句。可能他们看起来像这样:
UPDATE MyTable
SET Sequence = 2
WHERE ItemID = 'A'
UPDATE MyTable
SET Sequence = Sequence + 1
WHERE ItemID <> 'A' AND Sequence >=2 AND Sequence <= 9
如果要在一次调用数据库时更新多个项目的顺序,请查看事务,这可以确保应用所有语句,或者如果出现错误则全部回滚,以确保数据的一致性。
请注意,序列号与唯一标识行的ID不同(并且永远不应更改)。您需要将此额外列添加到表中。在上面的示例中,我使用ItemID作为字符串作为标识符,以避免与整数序列号混淆,但实际上您的标识符可能是某种数字或GUID。
最后,为了按顺序排列您的项目,您可以运行以下查询:
SELECT *
FROM MyTable
ORDER BY Sequence ASC