Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Transaksi Dapat Mempercepatkan Operasi INSERT MySQLi dengan Berbilang Nilai dengan ketara?
Operasi INSERT yang Cekap dan Selamat dalam MySQLi dengan Pelbagai Nilai
Memasukkan volum besar data ke dalam pangkalan data boleh menjadi cabaran prestasi, terutamanya apabila ia datang untuk mengekalkan keselamatan terhadap serangan suntikan SQL. PHP dan MySQLi menyediakan pelbagai pendekatan untuk menangani isu ini sambil memastikan integriti data.
Kod yang disediakan menggunakan pendekatan mudah untuk menyediakan dan mengikat parameter dalam gelung untuk setiap nilai dalam tatasusunan. Walau bagaimanapun, kaedah ini boleh menghadapi isu prestasi untuk set data yang besar disebabkan oleh proses yang berulang.
Teknik yang disyorkan adalah untuk memanfaatkan urus niaga. Transaksi mengumpulkan berbilang operasi ke dalam satu unit, memastikan semuanya digunakan atau tidak sama sekali. Dengan melampirkan pertanyaan sisipan dalam transaksi, seperti yang ditunjukkan dalam kod yang dioptimumkan:
$mysqli->query("START TRANSACTION"); foreach ($array as $one) { $stmt->execute(); } $mysqli->query("COMMIT");
kita boleh memperoleh peningkatan prestasi yang ketara. Transaksi mengurangkan overhed untuk melaksanakan setiap pertanyaan secara individu, menghasilkan masa pelaksanaan yang lebih cepat.
Selain itu, kod yang dioptimumkan meminimumkan bilangan panggilan untuk menyediakan() dan bind_param() dengan melaksanakan operasi ini di luar gelung. Ini mengurangkan lagi masa pemprosesan.
Keputusan Ujian Prestasi
Untuk menunjukkan keberkesanan pengoptimuman ini, ujian telah dijalankan dengan 10,000 lelaran pada pelayan web. Keputusannya ialah:
Penggunaan transaksi menghasilkan dua tertib peningkatan kelajuan magnitud, mempamerkan potensinya untuk prestasi yang lebih baik apabila berurusan dengan set data yang besar.
Atas ialah kandungan terperinci Bagaimanakah Transaksi Dapat Mempercepatkan Operasi INSERT MySQLi dengan Berbilang Nilai dengan ketara?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!