MySQL 更新クエリでの値の増加
MySQL 更新クエリで値を増加しようとすると、このアプローチは、提供されたコード スニペットに示されています。コード:
mysql_query(" UPDATE member_profile SET points= ' ".$points." ' + 1 WHERE user_id = '".$userid."' ");
は、既存のポイント値を正しく増分しません。現在の値に 1 を加算するのではなく、単純に 1 に設定します。
解決策
ポイント値を正しくインクリメントするには、MySQL の組み込みを使用する必要があります。インクリメント演算子。以下の変更されたコードは、ポイント列を 1 ずつ増やします:
$sql = "UPDATE member_profile SET points = points + 1 WHERE user_id = ?"; $db->prepare($sql)->execute([$userid]);
このコードは、最新の PHP バージョンの PDO (PHP Data Objects) と mysqli (MySQL Enhanced Extension) データベース ライブラリの両方で動作します。
以上がMySQL UPDATE クエリで値を適切にインクリメントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。