2017-10-07 150 views
-1
UPDATE `mytable` SET `status`='og' WHERE `my_date_time` < now() 

上面給出的查詢在phpmyadmin中觸發但在codeigniter中不起作用時工作正常。 這是我正在努力做到這一點的笨:mysql查詢不能在codeigniter中工作

$this->db->set('status','og'); 
$this->db->where('my_date_time <','NOW()'); 
$this->db->update('mytable'); 

我所有的其他MySQL查詢是通過笨做工精細。

+0

$日期=新的日期時間( 「現在」); \t $ curr_date = $ date-> format('Y-m-d'); \t $ data = array('status'=>'og'); \t $ this-> db-> where('my_date_time <',$ curr_date); \t $ this-> db-> update('mytable',$ data); –

回答

0

你可以試試這個查詢您的問題:

$this->db->set('status','og'); 
$this->db->where('my_date_time < NOW()',false); 
$this->db->update('mytable'); 
+0

它工作!謝謝。但是,你能解釋一下這個第三個參數嗎? –

+0

你可以訪問codeigniter URL中的where子句鏈接:https://www.codeigniter.com/userguide3/database/query_builder.html –

+0

我讀過它。它說'如果將它設置爲FALSE,CodeIgniter將不會嘗試保護您的字段或表名'。這究竟意味着什麼?你能舉個例子嗎? –