Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/07/2011, 12:26
Avatar de abimaelrc
abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Duda PDO y ROLLBACK

Yo uso algo así
Código PHP:
Ver original
  1. <?php
  2. $oci = new PDO('oci:dbname=dbOracle;', 'user', 'pass');
  3. $mysql = new PDO('mysql:host=localhost;dbname=dbMysql', 'user', 'pass');
  4.  
  5. $mysql->beginTransaction();
  6. $rowsAffected = $mysql->exec('TRUNCATE TABLE tabla');
  7.  
  8. foreach($oci->query('SELECT * FROM TABLE', PDO::FETCH_ASSOC) as $r){
  9.     $insert = $mysql->prepare('INSERT INTO tabla VALUES(null, ?)');
  10.     $insert->bindParam(1, $r['COLUMNA'], PDO::PARAM_STR);
  11.     $insert->execute();
  12. }
  13.  
  14. if($mysql == true){
  15.     $mysql->commit();
  16. }else{
  17.     $mysql->rollback();
  18. }

La idea es usar beginTransaction y luego commit o rollback
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos