ホームページ >データベース >mysql チュートリアル >MySQL 更新クエリの後に更新された値を取得するにはどうすればよいでしょうか?

MySQL 更新クエリの後に更新された値を取得するにはどうすればよいでしょうか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-03 06:04:301044ブラウズ

How do you retrieve the updated value after a MySQL update query?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。