0

我正在尝试通过 php 在我的数据库中编辑一个整数的值,这是我正在使用的代码

 $query = "UPDATE Bremners WHERE stud_name = john SET stud_goal = stud_goal + 1";

Bremners 是表,在表中有一个人名(stud_name)的列,所以我尝试制作它,以便如果 stud_name = john 然后更改表示 john 的目标数量的 int,该列有目标的数量是 stud_goal。我尝试将该值增加 1。

4

1 回答 1

4

尝试这个:

$query = "UPDATE Bremners SET stud_goal = stud_goal + 1 WHERE stud_name = 'john'";

在 PHP 中,您可以从以下内容开始:

<?php
$mysqli = new mysqli("localhost", "root", "", "test");

$name = "Bill";
$increment = 1;

if ($stmt = $mysqli->prepare("UPDATE Bremners SET stud_goal = stud_goal + ? WHERE stud_name = ?"))
{
    $stmt->bind_param("is", $increment, $name); 
    $stmt->execute();
    printf("%d Row affected.\n", $stmt->affected_rows);

    $stmt->close();
}
$mysqli->close();
?>

如果您需要将多个值更改多个数量,则应使用以下方式编写查询:

$mysqli->prepare("UPDATE Bremners
                  SET
                    stud_goal = stud_goal + ?,
                    stud_assist = stud_assist + ?
                  WHERE stud_name = ?")

?是占位符,那么你必须以这种方式绑定你的参数:

$stmt->bind_param("iis", 1, 5, "john");
  • 这将取代第一个?类型为“i”的 1(整数)
  • 第二 ?带有 5 个“i”类型(整数)
  • 第三 ?带有“s”类型的“john”(字符串)

请看一下这个链接

于 2013-05-14T19:16:54.280 回答