Вот что я хотел бы сделать
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» должен быть соединен с «данными».
Когда я запускаю выше, я получаю ошибку SQL, говорящую, что одно из полей таблицы «данные» не найдено.
Какие-либо предложения?
БОЛЬШЕ ИНФОРМАЦИИ
Это сгенерированный запрос 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'); }