CI 框架批量添加数据(如果数据库有就更新数据)
Posted sgm4231
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CI 框架批量添加数据(如果数据库有就更新数据)相关的知识,希望对你有一定的参考价值。
model:
public function insert_select($values) { $sql = ‘INSERT INTO ‘ . $this->_table_name . ‘(article_id,user_id,share_link,short_link,read_price,created_at,updated_at) VALUES ‘ . $values . ‘ ON DUPLICATE KEY UPDATE article_id=values(article_id),user_id=values(user_id),share_link=values(share_link), read_price=values(read_price),created_at=values(created_at),updated_at=values(updated_at)‘; $query = $this->db->query($sql); return $query; }
controllers:
批量添加的数据$res数组是:
//拼接sql
$sql = ‘‘; foreach ($res as $key => $val) { $sql .= ‘(‘ . $val[‘article_id‘] . ‘,‘ . $val[‘user_id‘] . ‘,‘ ."‘". $val[‘share_link‘] ."‘".‘,‘ ."‘". $val[‘short_link‘] ."‘". ‘,‘ . $val[‘read_price‘] . ‘,‘."‘" . $val[‘created_at‘] ."‘". ‘,‘."‘" . $val[‘updated_at‘] ."‘" . ‘)‘.(($key)+1==count($res)?‘‘:‘,‘); } $arr = $this->share_record_model->insert_select($sql);
以上是关于CI 框架批量添加数据(如果数据库有就更新数据)的主要内容,如果未能解决你的问题,请参考以下文章
保存时需检查缓存中的数据在数据库中如果没有就就添加,有就更新,原来有而现在没有的就删除
on duplicate key update 的使用(数据库有就修改,没有就添加数据)