Maison > Article > base de données > Comment résoudre l'erreur « L'argument OUT ou INOUT… n'est pas une variable » lors de l'appel de procédures stockées avec PDO ?
Appel d'une procédure stockée avec un paramètre de sortie à l'aide de PDO
Cette question explore un problème rencontré lors de la tentative d'appel d'une procédure stockée avec un paramètre de sortie à l'aide de PDO en PHP. Le message d'erreur "SQLSTATE[42000] : Erreur de syntaxe ou violation d'accès : 1414 OUT ou INOUT argument 1 pour la routine mydb.proc_OUT n'est pas une variable ou une NOUVELLE pseudo-variable dans le déclencheur BEFORE" s'affiche.
Pour résoudre ce problème problème, les étapes suivantes sont suggérées :
$dbh->query("CALL SomeStoredProcedure($someInParameter1, $someInParameter2, @someOutParameter)"); $dbh->query("SELECT @someOutParameter");
$stmt = $dbh->prepare("CALL SomeStoredProcedure(?, ?)"); $stmt ->execute(array($someInParameter1, $someInParameter2));
En implémentant ces solutions, l'erreur liée au paramètre de sortie dans la procédure stockée devrait être résolue.
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!