Aktualisierten Wert vom MySQL-Update erhalten
In einer MySQL-Update-Abfrage wird häufig die Anzahl der betroffenen Zeilen anstelle des aktualisierten Werts empfangen . Es gibt jedoch eine Methode, um den aktualisierten Wert direkt aus der Abfrage abzurufen.
Lösung: Verwendung einer gespeicherten Prozedur
Eine gespeicherte Prozedur kann erstellt werden, um die Aktualisierung durchzuführen und rufen Sie dann den aktualisierten Wert mithilfe eines Ausgabeparameters ab. Die folgende gespeicherte Prozedur erhöht die Score-Spalte in der Artikeltabelle für eine bestimmte ID und gibt den neuen Wert zurück:
<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-Implementierung
In PHP wird der gespeicherte Die Prozedur kann wie folgt aufgerufen und der aktualisierte Wert abgerufen werden:
<code class="php">$sql = "CALL increment_score($id)"; $result = mysql_query($sql); $row = mysql_fetch_array($result); echo $row['new_score'];</code>
Diese Lösung ermöglicht es Ihnen, den Wert zu aktualisieren und den aktualisierten Wert in einem einzigen Vorgang abzurufen Abfrage, wodurch die Anzahl der zur Ausführung der Aufgabe erforderlichen Abfragen reduziert wird.
Das obige ist der detaillierte Inhalt vonWie ruft man den aktualisierten Wert nach einer MySQL-Update-Abfrage ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!