Php 是否可以使用Codeigniter';有什么活动记录?

Php 是否可以使用Codeigniter';有什么活动记录?,php,mysql,codeigniter,activerecord,join,Php,Mysql,Codeigniter,Activerecord,Join,这是我想做的 function edit_save($data, $post_id, $user_id) { $this->db->where('post.user_id', $user_id); $this->db->where('post.post_id', $post_id); $this->db->join('data', 'post.data_id_fk = data.data_id', 'left'); $this-

这是我想做的

function edit_save($data, $post_id, $user_id)
{
    $this->db->where('post.user_id', $user_id);
    $this->db->where('post.post_id', $post_id);
    $this->db->join('data', 'post.data_id_fk = data.data_id', 'left');
    $this->db->update('post', $data);
}
“post”表需要与“data”保持连接

当我运行上述命令时,我得到一个SQL错误,表示找不到“data”表中的一个字段

有什么建议吗

更多信息

这是生成的SQL查询

UPDATE `post` 
SET `data_value` = '111', `data_date` = '2012-02-13', `post_text` = '111' 
WHERE `post_stream_id` =  '5' 
    AND `post_id` =  '18'
这就是错误所在

Unknown column 'data_value' in 'field list'

它不显示JOIN语句。

请尝试此活动记录查询,以使用联接进行更新:

function edit_save($data, $post_id, $user_id)
{
    $this->db->set($data)
    $this->db->where('post.user_id', $user_id);
    $this->db->where('post.post_id', $post_id);
    $this->db->where('post.data_id_fk = data.data_id');
    $this->db->update('post, data');
}

确切的错误信息是什么?该列是否存在?它运行的确切SQL是什么?aaron,该专栏存在-刚刚发布了更多代码-让我知道您认为什么是合理的解决方案-我的解决方案与您提供的链接相同。所以,请接受这个答案。有关如何接受答案的信息,请参见。非常感谢。我无法让你的更新行工作。它需要“as”SQL语法来克服CodeIgniter的转义特性。