ホームページ > バックエンド開発 > PHPチュートリアル > PHP を使用して MySQLi に多くの行を効率的かつ安全に挿入するにはどうすればよいですか?

PHP を使用して MySQLi に多くの行を効率的かつ安全に挿入するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-13 18:08:11
オリジナル
732 人が閲覧しました

How Can I Efficiently and Securely Insert Many Rows into MySQLi Using PHP?

MySQLi での効率的かつ安全な複数行の挿入

PHP 開発において、MySQL データベースに多数の行を効率的かつ安全に挿入することは、チャレンジ。これに対処するには、パフォーマンスを維持しながら SQL インジェクションを防止する手法を採用することが不可欠です。

一般的なアプローチの 1 つは、パラメーター バインディングを備えたプリペアド ステートメントを使用することです。ただし、大量の行 (例: 2000) を挿入する必要がある場合、このアプローチは時間がかかる可能性があります。

より効率的な解決策は、データベース トランザクションを利用することです。トランザクションを使用すると、複数の操作をグループ化し、単一のアトミック単位として実行できます。トランザクションを開始すると、単一の準備されたステートメントを使用して複数の行を挿入でき、個別の挿入の実行に関連するオーバーヘッドが削減されます。

これを説明するために、最適化されたコード スニペットを次に示します。

このコードはトランザクションを初期化し、挿入ステートメントを準備し、パラメーターをバインドします。次に、値の配列を反復処理し、トランザクション内の値ごとに挿入ステートメントを実行します。最後に、トランザクションをコミットし、すべての挿入を終了します。

元のメソッドと比較して、このアプローチではパフォーマンスが大幅に向上します。 10,000 回の反復を行ったテストでは、元のアプローチでは 226 秒かかったのに対し、トランザクションベースの挿入にはわずか 2 秒しかかかりませんでした。これは、2 桁もの大幅な速度向上です。

トランザクションとプリペアド ステートメントを活用することで、PHP で MySQL データベースに複数の行を効率的かつ安全に挿入でき、データの整合性とパフォーマンスの最適化の両方を確保できます。

以上がPHP を使用して MySQLi に多くの行を効率的かつ安全に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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