Pelaksanaan Pertanyaan MySQL Berturut-turut dalam PHP
Dalam pengaturcaraan PHP, adalah mungkin untuk melaksanakan berbilang pertanyaan MySQL secara berturut-turut. Walau bagaimanapun, sesetengah pengguna telah mengalami ralat sintaks apabila cuba berbuat demikian. Artikel ini bertujuan untuk memberikan panduan tentang menyelesaikan isu tersebut dan menggunakan kaedah yang sesuai untuk pelaksanaan berbilang pertanyaan.
Satu pendekatan biasa untuk menjalankan berbilang pertanyaan ialah menggunakan koma bertitik (;) sebagai pemisah antara setiap pertanyaan. Sebagai contoh, dalam coretan kod PHP yang disediakan, pembolehubah $sql menggabungkan tiga pernyataan MySQL: mencipta jadual sementara, mengemas kini baris dalam jadual sementara dan memasukkan data daripada jadual sementara ke dalam jadual utama.
Walau bagaimanapun, MySQL memerlukan panggilan pelaksanaan pertanyaan baharu untuk setiap pernyataan berasingan. Oleh itu, melaksanakan pembolehubah $sql yang digabungkan dengan $conn->query($sql) akan mengakibatkan ralat sintaks.
Untuk membetulkan isu, adalah disyorkan untuk menyediakan dan melaksanakan setiap pertanyaan secara individu, seperti yang ditunjukkan dalam coretan kod yang dipertingkatkan yang disediakan dalam jawapan:
$queries = [ "CREATE TEMPORARY TABLE tmp SELECT * FROM event_categoriesBU WHERE id = 1", "UPDATE tmp SET>
Pendekatan ini memisahkan setiap pertanyaan kepada pernyataannya sendiri dan membolehkan pelaksanaan yang betul. Adalah penting untuk ambil perhatian bahawa fungsi multi_query tidak menyokong nilai pemegang tempat, mendedahkan aplikasi kepada potensi kelemahan suntikan SQL.
Untuk fleksibiliti dan kebolehsuaian yang dipertingkatkan, pertimbangkan untuk menggunakan PDO (Objek Data PHP) dan bukannya MySQLi. PDO menawarkan ciri yang lebih mantap, termasuk sokongan untuk nilai pemegang tempat dan keselamatan yang dipertingkatkan terhadap suntikan SQL.
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Berbilang Pertanyaan MySQL Secara Berturut-turut dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!