无法在Codeigniter中更新RAW查询

问题描述

我要在数据库中进行更新的查询有点复杂,因此我使用$this->db->query($sql,array($userId));来更新表,但是表没有更新。

更新查询如下:

UPDATE users usr1
SET dummy_id= (SELECT concat('D',UPPER(c.flag_lang),LPAD(usr1.id,7,0)) new_did FROM country c,desktop d
WHERE
usr1.id=d.user_id
AND d.country_id=c.id
and user_type='dummy')
WHERE usr1.user_type='dummy' and usr1.id = ?

如果我通过My​​sql客户端执行上述查询,则我的表正在更新。

但是,如果我在活动记录中写查询为:

$this->db->where('id',$userId);
$this->db->set('dummy_id','CUSTOM');
$this->db->update('users');

该表确实得到了正确的更新,但是,由于查询很复杂,我不得不进行RAW查询,但是由于某种原因它无法正常工作。

请求提供帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)