2010-05-05 162 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); 
} 

,仿佛是空则该值将需要?