Maison > base de données > tutoriel mysql > Comment récupérer la valeur mise à jour après une requête de mise à jour MySQL ?

Comment récupérer la valeur mise à jour après une requête de mise à jour MySQL ?

Barbara Streisand
Libérer: 2024-11-03 06:04:30
original
1050 Les gens l'ont consulté

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

Obtention d'une valeur mise à jour à partir d'une mise à jour MySQL

Dans une requête de mise à jour MySQL, il est courant de recevoir le nombre de lignes affectées au lieu de la valeur mise à jour . Il existe cependant une méthode pour récupérer la valeur mise à jour directement à partir de la requête.

Solution : Utilisation d'une procédure stockée

Une procédure stockée peut être créée pour effectuer la mise à jour puis récupérez la valeur mise à jour à l'aide d'un paramètre de sortie. La procédure stockée suivante incrémente la colonne de score dans la table des éléments pour un identifiant donné et renvoie la nouvelle valeur :

<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>
Copier après la connexion

Implémentation PHP

En PHP, la procédure stockée La procédure peut être appelée et la valeur mise à jour peut être obtenue comme suit :

<code class="php">$sql = "CALL increment_score($id)";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
echo $row['new_score'];</code>
Copier après la connexion

Cette solution vous permet de mettre à jour la valeur et de récupérer la valeur mise à jour en une seule requête, réduisant ainsi le nombre de requêtes requises pour accomplir la tâche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal