Maison > base de données > tutoriel mysql > Comment récupérer les paramètres OUT des procédures stockées MySQL en PHP ?

Comment récupérer les paramètres OUT des procédures stockées MySQL en PHP ?

Susan Sarandon
Libérer: 2024-10-28 07:08:30
original
841 Les gens l'ont consulté

How to Retrieve OUT Parameters from MySQL Stored Procedures in PHP?

Accès aux paramètres OUT dans les procédures stockées PHP MySQL

Les procédures stockées sont utiles pour encapsuler des opérations de base de données complexes. Cependant, récupérer le résultat d’un paramètre OUT en PHP peut s’avérer difficile. Cet article fournit une solution détaillée.

Solution

  1. Connectez-vous à la base de données :Établissez une connexion MySQL à l'aide de l'extension mysqli.
  2. Appelez la procédure stockée : Exécutez la procédure stockée à l'aide de la méthode multi_query(), en spécifiant le(s) paramètre(s) OUT comme indiqué dans la syntaxe ci-dessous :

    <code class="php">$mysqli->multi_query("CALL myproc($ivalue,@x);SELECT @x");</code>
    Copier après la connexion
  3. Récupérer les résultats : La méthode multi_query() renvoie un booléen indiquant le succès. Si l'appel a réussi :

    • Utilisez store_result() pour récupérer les résultats de la première requête (l'exécution de la procédure stockée).
    • Utilisez fetch_row() pour parcourir les lignes de résultats. et accédez à la valeur du paramètre OUT.

Exemple

Considérons une procédure stockée myproc avec un paramètre IN i et un paramètre OUT j . Voici un exemple de code PHP pour accéder au paramètre OUT :

<code class="php">$mysqli = new mysqli("HOST", "USR", "PWD", "DBNAME");
$ivalue = 1;
$res = $mysqli->multi_query("CALL myproc($ivalue,@x);SELECT @x");
if ($res) {
  $result = $mysqli->store_result();
  $row = $result->fetch_row();
  $output = $row[0]; // OUT parameter value
  $result->close();
}
$mysqli->close();</code>
Copier après la connexion

Ce code montre comment récupérer le paramètre OUT j et le stocker dans la variable $output.

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