ホームページ  >  記事  >  バックエンド開発  >  PHP から MySQL ストアド プロシージャを呼び出す方法は?

PHP から MySQL ストアド プロシージャを呼び出す方法は?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-06 19:49:02340ブラウズ

How to Call MySQL Stored Procedures from PHP?

PHP から MySQL ストアド プロシージャを呼び出す

データベースを操作する場合、ストアド プロシージャは、反復的なデータベース操作を実行するための構造化およびカプセル化された方法を提供します。この機能を PHP アプリケーションに統合する場合は、MySQL データベースでストアド プロシージャの呼び出しをサポートする mysqli 拡張機能を利用できます。

例:

次のシナリオを考えてみましょう。

  • MySQL クライアント バージョン: 4.1.11
  • MySQL サーバー バージョン: 5.0.45

getTreeNodeName という名前のストアド プロシージャがあるとします。これは nid パラメータを受け取り、対応するノード名を返します。以下は、このストアド プロシージャを呼び出すために使用できる PHP コードです:

<?php

// Enable error reporting
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

// Connect to the MySQL database
$connection = mysqli_connect("hostname", "user", "password", "db", "port");

// Create a prepared statement for the stored procedure
$stmt = mysqli_prepare($connection, "CALL getTreeNodeName(?)");

// Bind the parameter to the statement
mysqli_stmt_bind_param($stmt, "i", $nid);

// Execute the prepared statement
mysqli_stmt_execute($stmt);

// Bind the result to variables
mysqli_stmt_bind_result($stmt, $nodeName);

// Fetch the result
mysqli_stmt_fetch($stmt);

// Print the result
echo $nodeName;

// Close the prepared statement and connection
mysqli_stmt_close($stmt);
mysqli_close($connection);

?>

注:

mysql_connect、mysql_query、mysql_fetch_array 関数の使用中に問題が発生した場合代わりに、セキュリティとパフォーマンスが向上する mysqli 拡張機能の使用を検討してください。

以上がPHP から MySQL ストアド プロシージャを呼び出す方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。