Heim  >  Artikel  >  Datenbank  >  Wie greife ich mit PHP auf Out-Parameter in gespeicherten MySQL-Prozeduren zu?

Wie greife ich mit PHP auf Out-Parameter in gespeicherten MySQL-Prozeduren zu?

DDD
DDDOriginal
2024-11-01 12:43:02550Durchsuche

How to Access Out Parameters in MySQL Stored Procedures with PHP?

Zugriff auf Out-Parameter in gespeicherten PHP-MySql-Prozeduren

Beim Arbeiten mit gespeicherten Prozeduren in MySQL unter Verwendung von PHP kann der Zugriff auf die Werte von Out-Parametern erfolgen eine Herausforderung. Dieser Artikel bietet eine Lösung basierend auf der MySQL-Dokumentation und einem Forenthread.

Methode:

  1. Verwenden Sie die Funktion mysqli::multi_query(), um die gespeicherten Daten auszuführen Prozedur und speichern Sie das Ergebnis in einer Variablen ($res).
  2. Instanziieren Sie eine Variable, um den Out-Parameterwert ($x in diesem Beispiel) zu speichern.
  3. Rufen Sie mysqli::store_result() auf Rufen Sie die Ergebnismenge ab.
  4. Verwenden Sie mysqli::fetch_row(), um über die Zeilen zu iterieren und die Werte anzuzeigen, einschließlich des Out-Parameterwerts (@x).

Codebeispiel:

<code class="php">$mysqli = new mysqli("HOST", "USR", "PWD", "DBNAME");
$ivalue = 1;
$res = $mysqli->multi_query("CALL myproc($ivalue, @x);SELECT @x");

if ($res) {
  $results = 0;
  do {
    if ($result = $mysqli->store_result()) {
      printf("<b>Result #%u</b>:<br/>", ++$results);
      while ($row = $result->fetch_row()) {
        foreach ($row as $cell) {
          echo $cell, " ";
        }
      }
      $result->close();
      if ($mysqli->more_results()) {
        echo "<br/>";
      }
    }
  } while ($mysqli->next_result());
}

$mysqli->close();</code>

Mit dieser Methode können Sie effektiv über Ihren PHP-Code auf die Werte unserer Parameter in gespeicherten Prozeduren zugreifen.

Das obige ist der detaillierte Inhalt vonWie greife ich mit PHP auf Out-Parameter in gespeicherten MySQL-Prozeduren zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn