如何检查行是否受codeigniter活动记录的影响

时间:2013-07-17 06:53:43

标签: codeigniter

我在网上搜索,但我找不到任何解决方案, 我的问题是,如果行值已更改,我现在如何在更新期间 或者如果一行受到影响?

3 个答案:

答案 0 :(得分:6)

使用affected_rows();

 $this->db->affected_rows()
  

执行“写入”类型查询(插入,更新等)时显示受影响的行数。

答案 1 :(得分:3)

当我们使用CodeIgniter时,只有在输入字段值发生变化时才更新数据,然后$this->db->affected_rows()将返回大于0的值。

假设我们有两个字段,' name'和'电子邮件'。如果我们尝试在不更改任何字段的情况下提交表单,则$this->db->affected_rows()将返回0,否则它将返回1.

更好的方法是使用:

if ($this->db->affected_rows() >= 0) {
    return true; // your code
} else {
    return false: // your code
}

答案 2 :(得分:0)

我认为这是实现这一目标的最简单方法。

return ($this->db->affected_rows() != 1) ? false : true;