我有一个查询,希望将INSERT一些数据放入表中,如果特定字段中已经有数据checkPoint,请运行UPDATE。经过大量研究后,用户建议使用ON DUPLICATE KEY。但是,此查询的作用是更新已存在的行,它插入带有新主键的新行,请有人可以解释我哪里出错了,或者我错过了什么。<?php $idUsers = $_SESSION['id']; $ModuleID = 5; $checkPoint = 999; $query= "INSERT INTO `userTakingModule` (`userTakingModuleID`, `idUsers`, `ModuleID`, `checkPoint`) VALUES (NULL, $idUsers, $ModuleID, $checkPoint) ON DUPLICATE KEY UPDATE `idUsers` = VALUES ($idUsers), `ModuleID` = VALUES ($ModuleID), `checkPoint` = VALUES ($checkPoint) "; $result = $conn -> query($query);?>我的数据库布局的屏幕截图:userTakingModule中间调用的表是应用查询的位置。这就是目前正在发生的事情,因为我需要以userTakingModuleID某种方式将主键包含到查询中。(我几乎需要说,寻找那里是相同的已经存在的项目idUser和ModuleID?)
1 回答
- 1 回答
- 0 关注
- 176 浏览
添加回答
举报
0/150
提交
取消