gpt4 book ai didi

php - 列表更新 - 行冲突

转载 作者:太空宇宙 更新时间:2023-11-03 11:05:59 25 4
gpt4 key购买 nike

我有一个名为 list 的列,它在我的订单中被(在 MYSQL 查询中)使用,列表中是数字:(例如 1 到 20)

然后使用 MYSQL order by list ASC 输出此列表 - 但是,当我在后端使用 Jquery 拖放 UI 列表更新我的列表时,它应该更新列表前端。

我的问题是我的列表顺序有时会与其他行冲突,因为列表中可能有两到三行的值为 1 因此当我的订单更新时,我想知道如何通过 +1 < 更新其他行strong>仅当行 >= 给定的订单号时

我不想让该列成为主要列,因为我的目标不是使 list 列唯一,这是因为有多个类别 - 在每个类别中它们都是从 1 开始 - 因此,如果我将其设置为唯一,则会导致错误,因为在不同的类别中有多个 1。

我问了一个 friend ,他说我可以使用触发器函数尝试 PL/SQL,但这对我来说是新的基础——我不完全理解这种语言,想知道是否有人可以帮助我做我想做的事情使用 MYSQL 甚至 PL/SQL。

这是我目前所拥有的:

<?php
$project = mysql_real_escape_string(stripslashes($_POST['pid']));
$category = mysql_real_escape_string(stripslashes($_POST['cat']));
$order = mysql_real_escape_string(stripslashes($_POST['order']));
// need to do update the moved result (list row) and update all conflicting rows by 1
mysql_query("UPDATE `projects` SET `cat`='$category',`list`='$order' WHERE `id`='$project'")or die(mysql_query());
?>

结论:

我正在尝试更新一个非唯一列,以便为该单个类别提供唯一值。我不确定如何通过 +1 更新该类别中的所有行

最佳答案

@andrewsi 是对的,特别是我建议 order by list ASC, last_update DESC 所以在更新 list 的同一个查询中,你可以为 last_update< 添加时间戳 因此您将不需要使用触发器或任何其他更新。

关于php - 列表更新 - 行冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11890135/

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