2010-05-05 233 views
0

我試圖通過1遞增一個INT列,如果某一個領域是不是在更新請求空,目前我有這個更新過的列,笨活動記錄幫助

public function updateCronDetails($transaction_reference, $flag, $log) { 
    $data = array (
     'flag' => $flag, 
     'log' => "$log" 
    ); 

    $this->db->where('transaction_reference', $transaction_reference); 
    $this->db->update('sy_cron', $data); 
} 

我需要知道的是我如何檢查發送到日誌字段的值是否爲NULL,以及如何增加一個count爲1的列?

回答

0
public function updateCronDetails($transaction_reference, $flag, $log = NULL) 
{  
    // Only increment this field if not null 
    is_null($log) || $this->db->set('field', 'field+1', FALSE); 

    $this->db 
     ->set('flag', $flag) 
     ->set('log', $log) 
     ->where('transaction_reference', $transaction_reference) 
     ->update('sy_cron', $data) 
} 
1

嘗試使用這樣的:

$this->db->set('field', 'field+1', FALSE); 
0

如何使用三元運算符即

public function updateCronDetails($transaction_reference, $flag, $log) { 
    $data = array (
     'flag' => $flag, 
     'log' => (is_null($log))? 1 : $log, 
    ); 

    $this->db->where('transaction_reference', $transaction_reference); 
    $this->db->update('sy_cron', $data); 
} 

,彷彿是空則該值將需要?