Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso implementare il commit/rollback per MySQL in PHP?

Dai un'occhiata a questo tutorial sulle transazioni con DOP.

In pratica racchiude il codice di lunga durata in:

$dbh->beginTransaction();
...
$dbh->commit();

E secondo questa pagina del documento PDO :

"Quando lo script termina o quando una connessione sta per essere chiusa, se hai una transazione in sospeso, PDO la annullerà automaticamente. "

Quindi perderai la transazione che era in sospeso quando lo script è scaduto.

Ma in realtà, dovresti riprogettarlo in modo che non dipenda dal fatto che lo script rimanga in vita.