"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment insérer plusieurs lignes dans une base de données avec des instructions préparées PDO ?

Comment insérer plusieurs lignes dans une base de données avec des instructions préparées PDO ?

Publié le 2024-11-16
Parcourir:518

How to Insert Multiple Rows into a Database with PDO Prepared Statements?

Insertion de plusieurs lignes avec des instructions préparées PDO

L'insertion de plusieurs lignes dans une base de données à l'aide d'une seule instruction préparée est non seulement possible, mais également recommandée pour son efficacité et sa sécurité.

Approche avec une requête à insertion unique

La première méthode consiste à utiliser une seule requête INSERT avec plusieurs valeurs :

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...

Pour exécuter cette requête à l'aide de PDO, vous pouvez suivre ces étapes :

$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);

Approche avec des requêtes d'insertion individuelles

Si le nombre de lignes à insérer est trop grand, vous devrez peut-être exécuter des requêtes d'insertion individuelles :

$query = "INSERT INTO Table (col1, col2, col3) VALUES (".implode(',', $args).")";
$stmt = $pdo->prepare($query);

foreach ($rows as $row) 
{
   $stmt->execute($row);
}

Cette approche garantit que chaque ligne est insérée séparément, minimisant ainsi le risque de problèmes lors de l'insertion.

Conclusion

Que vous utilisiez une seule insertion requête avec plusieurs valeurs ou requêtes d'insertion individuelles, les instructions préparées par PDO fournissent des méthodes efficaces et sécurisées pour insérer plusieurs lignes dans une base de données. Le choix de la bonne approche dépend des exigences spécifiques de l'application et de la base de données.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3