INSERT Batch,如果在 codeigniter 中重复键更新
Posted
技术标签:
【中文标题】INSERT Batch,如果在 codeigniter 中重复键更新【英文标题】:INSERT Batch, and if duplicate key Update in codeigniter 【发布时间】:2014-01-12 09:42:28 【问题描述】:有没有办法在批量插入查询中执行,如果键已经存在,更新 codeigniter 中的那一行? 我浏览了文档,发现只有 insert_batch 和 update_batch。但是如何在活动记录中使用重复键更新行?如果在 batch_insert 中插入或更新一行失败会怎样?所有插入都失败还是只有那一行?
【问题讨论】:
***.com/a/10372550/1239506 【参考方案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,它会给你更好的解决方案
【讨论】:
【参考方案2】:对于 Codeigniter 3,你可以使用这个库。这使您能够提供要插入到单独行中的键值对数组,并且如果数据库中出现重复键,则将自动更新数据。 https://github.com/amir-ranglerz/CodeIgniter-Insert-Batch-on-DUPLICATE-KEY-Update
【讨论】:
以上是关于INSERT Batch,如果在 codeigniter 中重复键更新的主要内容,如果未能解决你的问题,请参考以下文章
Batch Entry 0 insert into PGSQL-Call getNextException 查看原因
如何修复'$this->db->insert_batch($this->tbl, $data) 没有显示任何错误也没有插入数据库'?