ホームページ >バックエンド開発 >PHPチュートリアル >CodeIgniter で一括行挿入を効率的に実行するにはどうすればよいですか?
CodeIgniter を使用した一括行挿入の実行
問題
数千ものクエリを含む可能性のある非常に長いクエリの作成を避けるため追加された値については、
解決策
MySQL に複数の行を挿入する方が、個別に挿入を実行するよりもはるかに効率的です。 CodeIgniter でこのプロセスを最適化するには、implode() 関数を利用します。
実装
まず、SQL ステートメントを保持する配列を作成します。
$sql = array();
次に、データセットを反復処理して SQL を構築しますステートメント:
foreach( $data as $row ) { $sql[] = '("'.mysql_real_escape_string($row['text']).'", '.$row['category_id'].')'; }
最後に、implode() を使用してクエリを実行します:
mysql_query('INSERT INTO table (text, category) VALUES '.implode(',', $sql));
利点
このアプローチでは、SQL ステートメントを次のように組み立てることでコピーを最小限に抑えます。パーツを分割し、implode() を使用してそれらを効率的に連結します。多くの列と潜在的に長い値を含むデータセットの場合は、ネストされたループを使用して SQL ステートメントを動的に構築することを検討してください。
以上がCodeIgniter で一括行挿入を効率的に実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。