【发布时间】:2015-11-20 23:31:00
【问题描述】:
我正在 codeigniter 中构建一个查询。如果满足条件,我想更新数据库中相应的行,如果不满足,我想插入一个新行。这是我的代码:
$query = $this->db->get_where('extra_examples', array('question' => $data['question'],'tag' => $data['tag'] ));
if ($query->num_rows() > 0){
$this->db->update('extra_examples', $data);
return ($this->db->affected_rows() > 0);
} else {
$this->db->insert('extra_examples', $data);
return $this->db->insert_id();
}
插入工作正常,如果整个数据库中只有一行,则更新工作正常,但如果多行,更新似乎会更改数据库中的所有行。我希望它只更改 question = data['question'] 和 tag = data['tag] 的行。
我做错了什么?
【问题讨论】:
标签: php mysql codeigniter activerecord