MySQL 更新クエリの値の増加
MySQL 更新クエリの値を増加しようとしたときに問題が発生しました。コード:
mysql_query(" UPDATE member_profile SET points= '" . $points . "' + 1 WHERE user_id = '" . $userid . "' ");
は期待どおりにポイント列を増加させません。代わりに、値を 1 にリセットします。
解決策
MySQL 更新クエリで値をインクリメントする正しい方法は、データベース内の既存の値を単純にインクリメントすることです。 。修正されたコードは次のとおりです。
$sql = "UPDATE member_profile SET points = points + 1 WHERE user_id = ?"; $db->prepare($sql)->execute([$userid]);
このコードは、SQL クエリをより安全で効率的に実行する方法であるプリペアド ステートメントを使用します。指定された user_id のポイント列が 1 ずつ増加します。
追加の考慮事項
以上がMySQL UPDATE クエリで値を正しくインクリメントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。