この記事では主に、PHP の mysqli_query パラメーター MYSQLI_STORE_RESULT と MYSQLI_USE_RESULT の違いを紹介します。必要な方は参照してください。
nosqlが普及してきましたが、まだまだSQLが主流な気がします
今日php manulを閲覧していたら、mysqliクエリで興味深いパラメータを渡すことができることを発見しました
リーリー
誰かが phpmanul でこれを言いました: 大量のデータを取得する必要がある場合は、MYSQLI_USE_RESULT を使用します
実際、これら 2 つのパラメータの差は依然として非常に大きいです。
(1) 違いは、サーバーから結果セットの行を取得する点です。
(2) MYSQLI_USE_RESULT はクエリを開始しますが、実際には行をフェッチしません
(3) MYSQLI_STORE_RESULT はすぐにすべての行を取得します
(4) MYSQLI_STORE_RESULT 結果セットがサーバーから取得されると、行が抽出され、それらの行にメモリが割り当てられます, クライアントに保存されているため、mysqli_fetch_array() への以降の呼び出しでは、結果セットを既に保持しているデータ構造から行を削除するだけなので、エラーが返されることはありません。NULL を返す Mysqli_fetch_array() は、常に結果セットの終わりを示します。に達しました。
(5) MYSQLI_USE_RESULT 自体は行を取得せず、行ごとの取得を開始するだけです。つまり、行ごとに mysqli_fetch_array() を呼び出して完了する必要があります。そのため、通常の状況では、mysqli_fetch_array() が NULL を返す場合でも、結果セットの最後に到達したことを示しますが、サーバーとの通信中にエラーが発生したことを示す場合もあります。
概要
MYSQLI_USE_RESULT と比較すると、MYSQLI_STORE_RESULT はより多くのメモリと処理要件を必要とします。結果セット全体がクライアント上で保持されるため、一度に複数の行を取得する場合、メモリ割り当てとデータ構造の作成のコストが非常に大きくなります。 MYSQLI_USE_RESULT を使用できます。MYSQLI_USE_RESULT は、毎回処理される 1 行に十分なスペースのみが割り当てられるため、メモリ要件が低くなります。結果セット用の複雑なデータ構造を作成する必要がないため、この方が高速です。一方、MYSQLI_USE_RESULT はサーバーに大きな負荷をかけるため、クライアントがすべての行を取得するのに適していると判断されるまで、結果セット内の行を保持する必要があります。
参考文献: http://www.manongjc.com/article/1195.html

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)
