3

我在网上搜索,但没有找到任何解决方案,我的问题是我现在在更新期间如何判断行值是否已更改或行是否受到影响?

4

3 回答 3

6

使用affected_rows()

 $this->db->affected_rows()

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

于 2013-07-17T07:00:11.313 回答
3

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

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

更好的方法是使用:

if ($this->db->affected_rows() >= 0) {
    return true; // your code
} else {
    return false: // your code
}
于 2014-10-01T17:25:34.317 回答
0

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

return ($this->db->affected_rows() != 1) ? false : true;
于 2017-01-31T15:58:09.897 回答