2012-06-05 1 views

답변

2

Zend_Db_Expr의 도움으로 가능합니다.

예 :

$newValue = 101; 
$data  = array('column' => 
        new Zend_Db_Expr($db->quoteInto('column + ?', $newValue))); 
$where = $db->quoteInto('foo = ?', 'bar'); 

$updated = $db->update('TABLE', $data, $where); 

결과 쿼리 :

UPDATE `TABLE` SET `column` = `column` + 101 WHERE `foo` = 'bar'; 

당신이 문자열을 추가하는 방법을 요구하는 경우는 다음 코드와 비슷하지만 문자를 처리 할 때 + 연산자를 사용할 수 없습니다 데이터 대신 CONCAT()을 사용하십시오. 그게 내가 specting 정확히 무엇을,

$data = array('varcharCol' => 
       new Zend_Db_Expr(
        $db->quoteInto('CONCAT(varcharCol, ?)', ' append more text!') 
     )); 
+0

Excelent :

예를 들어,이에 $data 배열을 변경합니다. 나는 그것이'Zend_Db_Expr()'과 관련이 있다는 것을 알았지 만 그것을 구현하는 방법을 알지 못했다. –