il commit dovrebbe farlo in automatico no? nel senso, se la insert la prende correttamente, perchè l'update non dovrebbe farlo?
Uso mysqli per abitudine, ho abbandonato da un pò le altre funzioni

cmq ora faccio qualche test, se ti viene in mente altro fammi sapere