ActiveRecord de CodeIgniter fournit un moyen pratique d'insérer des données dans la base de données. Cependant, dans les cas où les données insérées peuvent entrer en conflit avec des enregistrements existants, il peut être nécessaire de spécifier une clause "ON DUPLICATE KEY UPDATE" pour gérer de tels scénarios.
Dans les modèles basés sur ActiveRecord de CodeIgniter, vous pouvez ajouter la clause "ON DUPLICATE KEY UPDATE" à votre opération d'insertion en ajoutant :
<code class="php">$sql = $this->db->insert_string('table', $data) . ' ON DUPLICATE KEY UPDATE duplicate=LAST_INSERT_ID(duplicate)'; $this->db->query($sql);</code>
Cette instruction ajuste la généré du SQL afin que lors de l'insertion de données dans la "table", s'il existe un enregistrement existant avec la même clé, le champ "en double" soit incrémenté au lieu de provoquer une erreur.
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!