Pernyataan dan transaksi yang disiapkan adalah teknik dan teknologi yang tidak terkait.
Anda mungkin ingin mengeluarkan START TRANSACTION
dan COMMIT
/ROLLBACK
perintah secara langsung daripada menggunakan metode khusus. Mereka secara fungsional setara.
Untuk loop Anda, Anda akan mengeluarkan START TRANSACTION
sebelum prepare
, lalu COMMIT
setelah loop keluar. Anda mungkin sebaiknya tidak mencoba membuka transaksi setelah pernyataan yang disiapkan telah dimulai tetapi sebelum dieksekusi.
Untuk beberapa alasan, mereka tidak menambahkan perintah "mulai transaksi" untuk menonaktifkan komit otomatis. Ini adalah salah satu hal aneh tentang mysqli yang membuat saya selalu merekomendasikan PDO. :) Membuka transaksi secara implisit akan menonaktifkan autocommit selama durasi transaksi.