Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] doUpdate i Criteria::IN
XvZOK
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 30.07.2007

Ostrzeżenie: (0%)
-----


Chciałbym korzystając z Propela/Criteria wykonać:

  1. UPDATE tabela SET kolumna=1 WHERE pk IN (1,2,34,...)


próbowałem zarówno:

  1. <?php
  2. $c1=new Criteria();
  3. $c1->add(TabelaPeer::PK,$ids,Criteria::IN);
  4. $c2=new Criteria();
  5. $c2->add(TabelaPeer::KOLUMNA,1);
  6. BasePeer::doUpdate($c1,$c2,Propel::getConnection());
  7. ?>


jak i z uzyciem TabelaPeer::doUpdate
Niestety wywala się twierdząc że nie może przekonwertować obiektu Tabela na integer.

Googlowałem z godzine ale bezskutecznie.

Jeśli się nie da przez Propel/Criteria to może jakiś inny sposób na masowy UPDATE z kompaktybilnością na wiele baz.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Lonas
post
Post #2





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


  1. <?php
  2. $con = Propel::getConnection();
  3.    
  4.    $c1 = new Criteria();
  5.    $c1->add(PhotoPeer::PHOTO_ID, $photo_id);
  6.    
  7.    // update set
  8.    $c2 = new Criteria();
  9.    $c2->add(PhotoPeer::COUNTER, COUNTER+1);
  10.    
  11.    BasePeer::doUpdate($c1, $c2, $con);
  12. ?>


Ten post edytował Lonas 11.03.2009, 07:32:38
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 08:31