用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3386|回复: 6
收起左侧

[HELP] 补充 $this->db->affected_rows()在postgresql上怎么不管用啊?

[复制链接]
发表于 2012-3-6 15:03:58 | 显示全部楼层 |阅读模式
       使用mysql数据库运行正常的项目,改为使用postgresql,结果报错,查找原因发现是
       $this->db->affected_rows()这一行,请问一下高手们,为什么$this->db->affected_rows()在postgresql上部管用呢?

         补充: 方法的代码如下:

function editMessge($id){
  $this->db->where('id',$id);
  $query=$this->db->get('contacts');
  print_r($query->result()); //打印出来,有结果集
  if($this->db->affected_rows()){
    echo "处理";     //这里却进不来
     ----------
     ----------
    }
  }else{
          ----------
        ----------
      }
}
在线求解!!!
发表于 2012-3-6 17:26:28 | 显示全部楼层
看DB源码 你就懂了
 楼主| 发表于 2012-3-6 18:35:47 | 显示全部楼层
楼上的要是懂了,可以给小弟指导一番。
发表于 2012-3-7 11:23:15 | 显示全部楼层
可以去看system/database/drivers/postgre/postgre_driver.php 源码文件,我没用过postgre,所以不知道,但你看源码 就懂了
发表于 2012-3-7 14:31:24 | 显示全部楼层
不管用肯定是因为不支持,或者是 BUG
发表于 2012-3-7 14:36:30 | 显示全部楼层
查询一下驱动,看看有没有affected_rows这个函数。
 楼主| 发表于 2012-3-7 16:41:09 | 显示全部楼层

结一下以前的这个帖子

本帖最后由 justdoit 于 2012-6-11 11:41 编辑

查询过驱动后知道了原因。affected_rows()是执行 INSERT,UPDATE 和 DELETE 查询后受到影响的记录数目。如果是select查询的话,可以用num_rows().这个与mysql的这两个函数的使用规则是一样的。{:soso_e100:}

本版积分规则