Melaksanakan Berbilang Pertanyaan MySQL Serentak dalam PHP
Melaksanakan berbilang pertanyaan dalam satu percubaan boleh meningkatkan kecekapan dan mengoptimumkan prestasi dalam aplikasi PHP/MYSQL. Pertimbangkan dua pertanyaan berikut yang anda mungkin mahu laksanakan secara serentak:
SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10; SELECT FOUND_ROWS();
Mengendalikan Keputusan Pertanyaan
Walaupun mysql-api dalam PHP tidak menyokong pelaksanaan berbilang pertanyaan dalam satu pernyataan, anda boleh mencapai ini menggunakan pendekatan alternatif. Satu kaedah ialah menggunakan sambungan mysqli:
$mysqli = new mysqli("localhost", "user", "password", "database_name"); $mysqli->multi_query("SELECT SQL_CALC_FOUND_ROWS Id, Name FROM my_table WHERE Name LIKE '%prashant%' LIMIT 0, 10; SELECT FOUND_ROWS();"); do { if ($res = $mysqli->use_result()) { while ($row = $res->fetch_array()) { // Handle query 1 results } $res->free(); } if ($mysqli->errno) { break; } } while ($mysqli->more_results());
Pendekatan ini membolehkan anda menggunakan kaedah use_result() untuk mendapatkan semula hasil pertanyaan individu. Sebagai alternatif, anda boleh menggunakan kaedah store_result() untuk menyimpan semua hasil dalam satu penimbal dan mengaksesnya kemudian.
Pertimbangan Tambahan
Perlu diperhatikan bahawa menggunakan mysql_ -kelas fungsi ditamatkan dan pendekatan pilihan adalah menggunakan PDO (Objek Data PHP). PDO menyediakan antara muka yang lebih standard dan selamat untuk berinteraksi dengan pangkalan data.
Kesimpulan
Dengan menggunakan kaedah yang digariskan di atas, anda boleh melaksanakan berbilang pertanyaan MySQL dengan berkesan dalam satu percubaan dalam PHP/MYSQL. Ini boleh meningkatkan kecekapan dan memudahkan kod anda, terutamanya apabila menangani pertanyaan yang saling berkaitan atau memerlukan hasil segera daripada berbilang jadual.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Berbilang Pertanyaan MySQL Serentak dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!