[PostgreSQL][PHP] transakcja i jej zasięg

0

Chodzi mi o coś takiego, że mam transakcję, która obejmuje kilka insertów i funkcję która też ma inserta i tą funkcję wywołuję w czasie transakcji, czy będzie ona też objęta w omawianej transakcji jeśli mam to tak napisane:

function dodaj(){
  global $trans;
  $db->sql="INSERT INTO ...";
  $trans &= $db->query();
}

  $trans = TRUE;
  $trans &= $db->beginTrans(); 

  $db->sql="INSERT INTO ...";
  $trans &= $db->query();

  $db->sql="INSERT INTO ...";
  $trans &= $db->query();

  dodaj();
  dodaj();

   if($trans) 
      $db->commitTrans();
    else 
      $db->rollbackTrans();
0

tak jak napisałeś powinno zadziałać oczywiście jeżeli wziąłeś i takie funkcje (beginTrans(), commitTrans(), rollbackTrans()) napisałeś w klasie.

0

Oczywiście funkcje są. Pytałem tutaj o to, bo nie mam pomysłu jak sprawdzić poprawność działania transakcji ;-)

0
wowo napisał(a)

Oczywiście funkcje są. Pytałem tutaj o to, bo nie mam pomysłu jak sprawdzić poprawność działania transakcji ;-)

odwołać ją i sprawdzić czy cokolwiek zostało dodane :>

ale procedury składowe podlegają takim samym zasadą jak SQL jeśli chodzi o transakcję

1 użytkowników online, w tym zalogowanych: 0, gości: 1