如何在不更新整个列的情况下更新mysql表中的一个值

时间:2019-09-17 06:21:49

标签: java mysql database combobox

我正在尝试使用Java更新MySql表中的一个值,但是我的代码更新了其中包含指定值的整个列。

我尝试使用LIMIT功能,例如

String sql = "UPDATE Task SET Status=? WHERE deadline = ? and name = ? order by deadline LIMIT 1";

,但是程序仍然更新整个“状态”列,而不仅仅是一个值。我也尝试过使用WHERE添加2个规范,但是仍然不起作用。

没有错误消息。

有帮助吗?谢谢!

1 个答案:

答案 0 :(得分:1)

您可以尝试使用子查询来对更新进行措辞,以找出最早的截止日期:

UPDATE Task
SET Status = ?
WHERE deadline = (SELECT min_deadline FROM
                     (SELECT MIN(deadline) AS min_deadline FROM Task) x) AND
      name = ?;
相关问题