MySQL は 5.0 からストアド プロシージャを導入したようですが、以前アプリケーションを作成していたときはストアド プロシージャに遭遇したことがありませんでしたが、現在は主に内部システムで使用されているため、フロント デスクでストアド プロシージャが必要になることがあります。 MySQL ストアド プロシージャを呼び出すには、PHP MySQL Lib はあまりサポートしていないようですが、情報はあまりありませんが、使用している友人のためにその方法を紹介します。頭が痛くなることはありません。
lMySQL 拡張機能はストアド プロシージャもサポートしますが、ストアド プロシージャが出力した場合、この呼び出しはエラーをスローします。呼び出し方法は非常に簡単です:
$rs = mysql_query("call func('str')", $conn);
これが文字列などの結果を返す場合、エラーが報告されます。ここでは MySQLi Extension を使用します:
$rs = mysqli_query("call func('str')", $conn);
このように、$rs は通常の MySQL Result として使用でき、非常に便利です。
ストアド プロシージャを呼び出すときに問題が発生することもあります。つまり、複数のストアド プロシージャが連続して呼び出され、エラーが報告される場合もあります。解決策は、ストアド プロシージャを呼び出して処理を完了した後で MySQL リンクを手動で閉じることです。次に、再度接続し、別のストアド プロシージャを呼び出し、必要な回数だけ再接続して処理します。
私は MySQL 拡張機能についてあまり詳しくないので、上記は単なる経験の要約です。詳しく知っている専門家がいたら、アドバイスをお願いします。