【问题标题】:INSERT Batch, and if duplicate key Update in codeigniterINSERT Batch,如果在 codeigniter 中重复键更新
【发布时间】:2014-01-12 09:42:28
【问题描述】:
有没有办法在批量插入查询中执行,如果键已经存在,更新 codeigniter 中的那一行?
我浏览了文档,发现只有 insert_batch 和 update_batch。但是如何在活动记录中使用重复键更新行?如果在 batch_insert 中插入或更新一行失败会怎样?所有插入都失败还是只有那一行?
【问题讨论】:
标签:
mysql
database
codeigniter
bulkinsert
batch-updates
【解决方案1】:
您将不得不通过添加“ON DUPLICATE”语句来进行少量自定义查询
$sql = $this->db->insert_string('YourTable', $data) . ' ON DUPLICATE KEY UPDATE duplicate=duplicate+1';
$this->db->query($sql);
$id = $this->db->insert_id();
也请check this out,它会给你更好的解决方案