Anzitutto grazie per la risposta.
Quindi, tradotto in italiano (e mi scuso con i puristi
)
Il codice MySQL:
Codice PHP:
START TRANSACTION
...
COMMIT
Vuol dire "Fammi tutto quello che sta nel mezzo come fosse un'unica istruzione"?
Mentre il codice MySQL:
Codice PHP:
START TRANSACTION
...
ROLLBACK
COMMIT
Vuol dire "Fammi tutto quello che sta nel mezzo, ma se trovi un errore annulla tutto ed esci"?
Ma alla fine la mie domande sono sempre la stesse:
1) Se non metto il ROLLBACK, in caso di errore (tipo sto facendo una select su una tabella inesistente), quando la transazione giunge al COMMIT mi esegue ugualmente le istruzioni?
2) Il ROLLBACK "intercetta" qualsiasi tipo di errore?
3) Sto ROLLBACK è, sintatticamente parlando, obbligatorio?
Matteo