Symfony: Транзакции.

Как известно известный фреймворк Symfony на php 5 использует ORM генератор Propel. Что мне нравиться в propel, так это то, что независимо от базы, будь то SQLite или MyISAM которые не поддерживают транзакций, propel для любой операции генерит методы, которые откатывают изменения в случае неудачи. То есть всегда есть

$con = Propel::getConnection(MyPeer::DATABASE_NAME);
$con->begin();
<some database actions>
$con->commit();

В случае неудачи произойдет откат $con->rollback();

Недавно наткнулся на то, что такие транзакции можно делать вручную не только для одного объекта, но и для сохранения как частного случая, целой цепочки объектов. Например:

try {

    $con->begin();

    $obj1->save($con);
    $obj2->save($con);  
    MyPeer::doDelete($obj3, $con);

    $con->commit();

  } catch (Exception $e) {
     $con->rollback();
     throw $e;
  }

По мотивам http://propel.phpdb.org/trac/wiki/Users/Documentation/1.2/HowTos/Transactions



9 Комментариев

  1. Austrus | Май 30, 2019

    Viagra Combien De Temps Avant Levitra 5 Mg Compresse Supreme Suppliersmumbaiindia canadian pharmacy cialis 20mg Todler Ear Infections Amoxicillin And Augmentin

  2. FranOrist | Май 31, 2019

    Viagra Generico Pagamento Alla Consegna Amoxicillin And Prenatal Vitamin Misoprostol Online Trusted Pharmacy viagra Flomax Amoxicillin What Is Zithromax Good For

  3. FranOrist | Июнь 23, 2019

    Viagra 100mg Erfahrung Onlinefarmacy cialis overnight shipping from usa Cialis Acquistp Cephalexin Contraindications

  4. FranOrist | Июль 9, 2019

    Viagra 100 Mg Acheter Priligy Dapoxetine Uk Citalopram 20 Mg

  5. Stepcrame | Июль 18, 2019

    Cephalexin Online With Next Day Shipping viagra Buy Suhagra Online India

  6. Stepcrame | Июль 27, 2019

    Buy Cialis Super Active Plus levitra and cialis online Lowpricenonprescriptionviagra

  7. Wilsonteemo | Июль 31, 2019

    Provides payday loans up to $1,000, which customers can gain the next trade day. http://www.usaloansreviews.com
    They also put forward brokered installment loans up to $2,400, a savings program and access to uninhibited pecuniary tools.

  8. StevIodisa | Февраль 7, 2020

    Propecia Culturismo http://abuycialisb.com – viagra vs cialis Cheap Tamoxifen Buy Cialis Levitra Trova Prezzi

  9. embowneby | Июль 16, 2020

    Viagra Beneficios Snonge https://ascialis.com/# – online cialis foorowaree Cialis A Basso Prezzo Anneby Cialis Sahunmarinia Achat Cialis En Ligne Europe

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Комментарий: