PHP で MySQL ストアド プロシージャを使用するには: PDO または MySQLi 拡張機能を使用して MySQL データベースに接続します。ストアド プロシージャを呼び出すステートメントを準備します。ストアド プロシージャを実行します。結果セットを処理します (ストアド プロシージャが結果を返す場合)。データベース接続を閉じます。
PHP で MySQL ストアド プロシージャを使用するにはどうすればよいですか?
はじめに
MySQL ストアド プロシージャは、複雑なデータ操作を実行するために使用できる、プリコンパイルされた SQL ステートメントのグループです。 PHP では、PDO 拡張機能または MySQLi 拡張機能を使用して MySQL ストアド プロシージャと対話できます。
PDO 拡張機能を使用する
<?php // 打开 PDO 连接 $conn = new PDO('mysql:host=localhost;dbname=database_name;charset=utf8', 'username', 'password'); // 设置存储过程的名称 $procedure_name = 'my_stored_procedure'; // 准备调用存储过程的语句 $stmt = $conn->prepare("CALL $procedure_name()"); // 执行存储过程 $stmt->execute(); // 处理结果集(如果存储过程返回了结果集) $result = $stmt->fetchAll(); // 关闭连接 $conn = null; ?>
MySQLi 拡張機能を使用する
<?php // 打开 MySQLi 连接 $mysqli = new mysqli('localhost', 'username', 'password', 'database_name'); // 设置存储过程的名称 $procedure_name = 'my_stored_procedure'; // 查询并执行存储过程 $result = $mysqli->query("CALL $procedure_name()"); // 处理结果集(如果存储过程返回了结果集) while ($row = $result->fetch_assoc()) { // do something with the row } // 关闭连接 $mysqli->close(); ?>
実際的なケース
パラメータ customer_id
を受け取るストアド プロシージャ get_customer_by_id
があるとします。 > そして顧客情報を返します。次のコード スニペットを使用して、PHP を使用してこのストアド プロシージャを呼び出すことができます: get_customer_by_id
,它接收一个参数 customer_id
并返回客户信息。我们可以使用以下代码片段使用 PHP 调用此存储过程:
// 用 PHP 调用 get_customer_by_id 存储过程 $customer_id = 123; $result = $mysqli->query("CALL get_customer_by_id($customer_id)"); $customer = $result->fetch_assoc();
然后,我们就可以访问 $customer
rrreee
$customer
配列にアクセスして、指定された顧客の詳細を取得できます。 🎜以上がPHP で MySQL ストアド プロシージャを使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。