Maison >base de données >tutoriel mysql >Comment puis-je mettre à jour efficacement plusieurs enregistrements MySQL à l'aide d'un tableau d'identifiants ?
Utilisation de requêtes MySQL avec des ID de contenu basés sur un tableau
Étant donné un tableau contenant des ID d'élément, la tâche consiste à exécuter une requête MySQL en utilisant chaque ID dans le tableau de manière séquentielle. Plus précisément, la requête implique la mise à jour des enregistrements individuels en fonction de leur identifiant.
Solution : adoption des instructions préparées
Il est crucial d'utiliser des instructions préparées pour se protéger contre les injections SQL. Vous trouverez ci-dessous deux approches alternatives :
1. Mise à jour itérative à l'aide d'un seul paramètre :
Préparez une instruction SQL avec un seul espace réservé pour l'ID :
$sql = "UPDATE MyTable SET LastUpdated = GETDATE() WHERE id = ?";
2. Mise à jour en une seule étape à l'aide de plusieurs paramètres :
Préparez une instruction SQL avec des espaces réservés pour tous les ID :
$params = implode(",", array_fill(0, count($ids), "?")); $sql = "UPDATE MyTable SET LastUpdated = GETDATE() WHERE id IN ($params)";
Avantages des déclarations préparées :
N'oubliez pas d'adapter votre choix d'approche à l'opération spécifique en cours (par exemple, UPDATE ou SÉLECTIONNER).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!