ugrás a tartalomhoz

Doctrine több oszlopos UPDATE

kalamona · 2008. Szep. 30. (K), 15.03
Hogyan tudok egy lekérdezésben több oszlopot updatelni?
Manual szerint egy oszlop frissítése így zajlik:
  1. rows = $q->update('Account')  
  2.          ->set('amount''amount + ?''200')  
  3.          ->where('id > 200')   
  4.          ->execute();   
ez nem jó:
  1. rows = $q->update('Account')  
  2.          ->set('amount''amount + ?''200')  
  3.          ->set('amount2''amount2 + ?''500')  
  4.          ->where('id > 200')   
  5.          ->execute();   
ez sem:
  1. rows = $q->update('Account')  
  2.          ->set('amount''amount + ?''200','amount2''amount2 + ?''500')  
  3.          ->where('id > 200')   
  4.          ->execute();   
Vagy ez nem támogatott? :)
 
1

És ez?

vbence · 2008. Szep. 30. (K), 16.31
Tekintve, hogy a DQL az SQL alapján készült én ezzel próbálkoznék:
  1. $rows = $q->update('Account')    
  2.     ->set('amount=amount+?, amount2=amount2+?', 200, 500)  
  3.     ->where('id > 200')     
  4.     ->execute();     
mégpedig azért, mert valami azt súgja, hogy ez is helyes:
  1. $rows = $q->update('Account SET amount=amount+?, amount2=amount2+? WHERE id > 200', 200, 500)  
  2.     ->execute();     
Nem otthon vagyok, úgyhogy lehet, hogy hülyeséget írtam... tekintsük puszta ötletelésnek :)