2012-09-17 73 views
1

INSERT INTO table1 ('id','name','cust_id','add') VALUES('5','RENJITH','5','2012- 08-04 15時07分38秒 ') ON DUPLICATE密鑰更新 '的cust_id'=' 5' ,其中 'table1.id' IN( '1', '2', '3')cakephp上的'DUPLICATE KEY UPDATE'

化妝它在cakephp?

+0

啥子是在CakePHP uour型號? –

+0

>我的模型名稱是model1。 – Renjithkumar

回答

0

這樣的事情應該在模型類工作:

//check if key duplikates 
$duplicate = $this->find('first', array('conditions' => array('Model1.id' => 5))); 

if($duplicate) { 
    $this->updateALL(array('Model1.cust_id' =>5), array('Model1.id' => array(1,2,3))); 
} else { 
    $data['Model1'] = array('Model1.id' = 5, 'Model1.name' => 'RENJITH','Model1.cust_id' => 5, 'Model1.add' => strtotime('2012-08-04 15:07:38')); 

    $this->create(); 
    $this->save($data); 
} 
+1

對於後代來說,這個答案在功能上是類似的,並且通常會做這個工作,但它與ON DUPLICATE KEY UPDATE不一樣,它是兩個查詢而不是一個。此外,除非您將其包含在事務中,否則如果您正在執行併發插入,仍有可能發生重複的條目/錯誤。 – cincodenada

相關問題