1

我正在使用以下代码来更新我的查询。假设我的能力值为 0,并且没有发生此更新。我怎样才能知道?

$statement = $conn->prepare ('UPDATE players SET 
                   ability = ability - 1 WHERE id = :playerId AND ability > 0');

$statement->bindParam (':playerId', $player['id'],PDO::PARAM_INT);

$statement->execute();
4

2 回答 2

1
$stmt = $conn->prepare("UPDATE.....");
$stmt->execute(array($var, $var));

现在,如果您想检查是否成功更新..

if($stmt->rowCount() > 0){
    //means updated
}else{
   //means not updated
}
于 2013-05-04T07:28:09.193 回答
0

根据手册PDO->exec 将返回受影响的行数,因此在执行后如果它返回 0 那么你就知道没有任何更新。

于 2013-05-04T07:25:50.367 回答