ホームページ > データベース > mysql チュートリアル > PHP で複数の MySQL クエリを実行するにはどうすればよいですか?

PHP で複数の MySQL クエリを実行するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-08 19:20:12
オリジナル
583 人が閲覧しました

How Can I Execute Multiple MySQL Queries in PHP?

PHP での複数の MySQL クエリの結合

PHP/MySQL では、次を使用して複数のクエリを 1 行のコードとして実行することはできません。通常の mysql API。ただし、同じ結果を達成する別のアプローチもあります。

MySQLi の mysqli_multi_query 関数の使用

MySQLi には、複数のクエリを一度に実行できる mysqli_multi_query という関数が用意されています。 。構文:

mysqli_multi_query(mysqli $link, string $query);
ログイン後にコピー
  • $link: 有効な MySQLi 接続リソース。
  • $query: 実行するすべてのクエリを含む文字列。各クエリはセミコロン (;) で区切ります。

例:

$mysqli = new mysqli('localhost', 'username', 'password', 'database_name');

$query = "SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10;" . "SELECT FOUND_ROWS();";

$mysqli->multi_query($query);

// Handle each result set separately
if ($mysqli->more_results()) {
    do {
        $result = $mysqli->store_result();
        // Process the current result set
        while($row = $result->fetch_array()) {
            // Do something with the row
        }
        $result->free();
    } while ($mysqli->more_results() && $mysqli->next_result());
}
ログイン後にコピー

注: mysql_query および mysql API のその他の関数の使用は非推奨であるため、MySQLi または PDO (PHP データ) を優先して使用しないでください。オブジェクト).

その他のアプローチ

  • 2 つの別々のクエリを実行する: 効率的ではありませんが、2 つのクエリを同時に実行することもできます。次々と。 2 番目のクエリは非常に高速に実行されるため、通常、パフォーマンスの違いは無視できます。
  • データベース抽象化レイヤー (DAL) を使用します: DAL は、データベース抽象化レイヤー (DAL) に共通のインターフェイスを提供するソフトウェア ライブラリです。さまざまなデータベースと対話します。 Doctrine などの一部の DAL では、複数のクエリを 1 つのトランザクションとして実行できます。

以上がPHP で複数の MySQL クエリを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート