ホームページ >データベース >mysql チュートリアル >MySQL 更新クエリの後に更新された値を取得するにはどうすればよいでしょうか?
MySQL Update から更新された値を取得する
MySQL 更新クエリでは、更新された値の代わりに影響を受ける行数を受け取るのが一般的です。 。ただし、更新された値をクエリから直接取得する方法があります。
解決策: ストアド プロシージャを使用する
更新を実行するストアド プロシージャを作成できます。次に、出力パラメータを使用して更新された値を取得します。次のストアド プロシージャは、指定された ID の項目テーブルのスコア列をインクリメントし、新しい値を返します。
<code class="sql">CREATE PROCEDURE increment_score( IN id_in INT ) BEGIN UPDATE item SET score = score + 1 WHERE id = id_in; SELECT score AS new_score FROM item WHERE id = id_in; END</code>
PHP 実装
PHP では、ストアド プロシージャプロシージャを呼び出して更新された値を次のように取得できます。
<code class="php">$sql = "CALL increment_score($id)"; $result = mysql_query($sql); $row = mysql_fetch_array($result); echo $row['new_score'];</code>
このソリューションにより、単一のクエリで値を更新し、更新された値を取得できるため、目的の達成に必要なクエリの数が削減されます。タスク。
以上がMySQL 更新クエリの後に更新された値を取得するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。