PDO プリペアド ステートメントを使用した複数の行の挿入
単一のプリペアド ステートメントを使用してデータベースに複数の行を挿入することは、可能であるだけでなく、次の場合にも推奨されます。その効率性とセキュリティ。
単一挿入によるアプローチクエリ
最初の方法では、複数の値を持つ単一の INSERT クエリを使用します。
INSERT INTO Table (col1, col2, col3) VALUES ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi'), ('abc', 'def', 'ghi') -- and so on...
PDO を使用してこのクエリを実行するには、次の手順に従います。
$query = "INSERT INTO Table (col1, col2, col3) VALUES (?, ?, ?), (?, ?, ?), (?, ?, ?) "; $params = array('abc', 'def', 'ghi', 'abc', 'def', 'ghi', 'abc', 'def', 'ghi'); $stmt = DB::getInstance()->prepare($query); $stmt->execute($params);
個別インサートによるアプローチクエリ
挿入する行の数が多すぎる場合は、個別の挿入クエリを実行する必要がある場合があります。
$query = "INSERT INTO Table (col1, col2, col3) VALUES (".implode(',', $args).")"; $stmt = $pdo->prepare($query); foreach ($rows as $row) { $stmt->execute($row); }
このアプローチにより、各行が個別に挿入されます。作業中に問題が発生するリスクを最小限に抑える
結論
複数の値を持つ単一の挿入クエリを使用するか、個別の挿入クエリを使用するかに関係なく、PDO 準備済みステートメントは、複数の行を挿入するための効率的かつ安全な方法を提供します。データベース。適切なアプローチの選択は、アプリケーションとデータベースの特定の要件によって異なります。
以上がPDO プリペアドステートメントを使用してデータベースに複数の行を挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。