2010-07-22 9 views

답변

31
$this->db->set('usage', 'usage+1', FALSE); 
$this->db->where('tag', 'java'); 
$this->db->update('tags'); 
+0

작은 노트를 업데이트 전달되지 않았 음은 optioanl 매개 변수를 설정하는 경우 FALSE, CodeIgniter는 필드 또는 테이블 이름을 백틱으로 보호하지 않습니다. – jkilbride

+0

또 다른 작은 메모, 첫 번째 줄에 세미콜론을 놓쳤습니다 :) – jeff

+0

동일한 업데이트에서 여러 set()을 사용할 수 있습니까? –

0

내가 찾을 수는 단지 액티브 레코드가 나를 위해 그것을 구축하는 것보다 오히려 SQL을 쓸 때때로 간단.

$sql = 'update tags set usage=usage+1 where tag=?'; 
$this->db->query($sql, array($tag)); 
3

또한이

$data = array('usage' => 'usage+1', *other columns*); 
$this->db->where('tag', 'java'); 
$this->db->update('tags', $data); 

UPDATE 같은 것을 사용할 수 있습니다 : $ 데이터는 단지 명확하게 그에

+1

'$ data'를 보내는 것을 잊지 마십시오. '$ this-> db-> update ('tags', $ data) ' –

+0

이 작동하지 않습니다 – abimelex

+0

여기에 코드를 붙여 넣으십시오. –

관련 문제