我想像这样执行这个查询
UPDATE `eventinfo` SET `Status` = '0' WHERE `EventDatetime`< `2015-05-12 01:17:23`.
我尝试过像这样的不同方式
$whereClause = 'EventDatetime'.'<'.$check_date;
$this->db->where($whereClause);
但是我失败了。正确的方法是什么。
不同的方法来做到这一点:
$data = array( 'status' => '0', );
$this->db->where('EventDatetime <', '2015-05-12 01:17:23');
$this->db->update('eventinfo', $data);
使用 codeigniter 方式进行小于和大于
$this->db->set('Status',0);
$this->db->where('EventDatetime <', '2015-05-12 01:17:23');
$this->db->update('eventinfo');
您需要以该格式对日期进行引号。
UPDATE `eventinfo`
SET `Status` = '0'
WHERE `EventDatetime`< '2015-05-12 01:17:23'
;
这就是你可以做到的
$data = array( 'Status' => '0', );
$this->db->where('EventDatetime <', '2015-05-12 01:17:23');
$this->db->update('eventinfo', $data);
注意:
注意'
EventDatetime
'和'<
'之间的空格,如果没有空格,就会报错
有很多方法可以做到这一点
$data = array( 'status' => '0', );
$whereClass="eventdatetime < '2015-05-12 01:17:23'";
$this->db->where($whereClass,NULL,FALSE);
//or $this->db->where('eventdatetime < ' ,'2015-05-12 01:17:23');
$this->db->update('eventinfo', $data);
如果仍然出现错误,那么一定是数据库错误,可能是缺少记录或其他原因