PHP"更新集在哪里"没有抛出任何错误,但不起作用



my php 代码(唯一相关的部分(:

  $sql="UPDATE `posts` SET `likes`=`likes`+1 WHERE `id`='$id'";

不工作。 我正在尝试增加一个默认设置为零的 int。 变量 ID 设置正确(来自 HTML 表单的响应(,插入函数在下一行中完美运行。我已经研究了几个小时,但空手而归:\想知道是否有人可以帮助我或为我指出可能的解决方案的正确方向。

这是我在下一行执行的查询:

$res= $mysqli->query($sql);

$mysql是数据库连接,$sql是上面的代码片段。

这是表

问题是您的表对整数列的NULL限额。我建议不要在整数列上使用NULL。对于您当前的问题,至少有两种方法可以解决它:

    使用
  1. coalesce 选择值,如果为 null,则使用 0

    更新帖子设置喜欢 = 合并(喜欢, 0( + 1其中 id = 10;

演示:http://sqlfiddle.com/#!9/54d9ae/1

  1. 更新行,使其实际具有0值。

    update posts
    set likes = 0
    where id = 10;
    

。或者,您可以将其设置为使用该更新1。使用这种方法,您可以删除where子句并更正整个表,假设NULL不正确。

相关内容

  • 没有找到相关文章

最新更新