大家好,我在 mySQL 中的表有以下更新:
$dbBuilder = '';
foreach($_POST as $key => $value)
{
if ($value != 'APPROVE') {
$dbBuilder = $value . ", " . $dbBuilder;
}
}
$dbBuilder = '(' . rtrim($dbBuilder, ", ") . ')';
UPDATE userCase SET Accepted = 1 WHERE CaseNum in $dbBuilder
工作正常......但现在我需要修改它以允许每个CaseNum 都有一个新的 QNum。
$result = mysql_query("SELECT QNum FROM userCase ORDER BY QNum DESC limit 1");
while($row = mysql_fetch_assoc($result)) {
$QNum = $row["QNum"] + 1;
break;
}
UPDATE userCase SET Accepted = 1, QNum = " . $QNum . " WHERE CaseNum in $dbBuilder
以上述方式执行此操作会将 QNum 设置为“in”中所有 CaseNum的相同数字。它必须是唯一的(例如,为每个新行在 QNum 中添加 1)。
它只需要比表中的最后一个 QNum 多 1。因此,当有人“批准”一些事情(让我们说 3 件事)时,它会转到上面的查询并且它需要是(假设数据库中的最后一个数字是 4)所以它需要是5,6,7。我现在拥有的代码只会做5,5,5。
我将如何在上面的代码中使用相同的CaseNum来完成此操作?
谢谢!