Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Pertanyaan MySQL Kedua Saya Gagal, dan Bagaimana `mysqli_multi_query()` Boleh Membantu?

Mengapa Pertanyaan MySQL Kedua Saya Gagal, dan Bagaimana `mysqli_multi_query()` Boleh Membantu?

DDD
DDDasal
2024-12-29 17:55:18146semak imbas

Why Do My Second MySQL Queries Fail, and How Can `mysqli_multi_query()` Help?

Dua Pertanyaan mysqli Secara serentak?

Apabila cuba melaksanakan berbilang pertanyaan MySQL, mengapa pertanyaan kedua gagal?

mysqli_multi_query() Penyelesaian

Untuk menangani isu ini, pertimbangkan untuk menggunakan fungsi mysqli_multi_query(). Fungsi ini membolehkan anda melaksanakan berbilang pertanyaan dalam satu panggilan mysqli.

Contoh Pelaksanaan

Mulakan dengan merumuskan rentetan yang mengandungi pertanyaan anda, memisahkan setiap satu dengan koma bertitik (; ).

$query  = "INSERT INTO images (project_id, user_id, image_name, date_created, link_to_file, link_to_thumbnail, given_name) VALUES ('$project_id', '$user_id', '$image_name', '$date_created', '$link_to_file', '$thumbnail', '$ImageName');";
$query .= "INSERT INTO images_history (project_id, user_id, image_name, date_created, link_to_file, link_to_thumbnail, given_name, day, month, year) VALUES ('$project_id', '$user_id', '$image_name', '$date_created', '$link_to_file', '$thumbnail', '$ImageName', '$day', '$month', '$year');";

Selepas itu, laksanakan berbilang pertanyaan menggunakan mysqli_multi_query():

$result = mysqli_multi_query($mysqli, $query);

Mengendalikan Keputusan Pelaksanaan

Hasil pelaksanaan ditangkap dalam pembolehubah $result. Jika pertanyaan pertama gagal, $result akan menjadi palsu.

Langkah dan Langkah Berjaga-jaga Seterusnya

Selain itu, ambil perhatian bahawa mysqli_store_result() akan mengembalikan false untuk pertanyaan tanpa set hasil (seperti pertanyaan INSERT). Oleh itu, pastikan anda menggunakan mysqli_error() untuk mengesahkan INSERT yang berjaya dengan menyemak keputusan kosong.

Rujuk dokumentasi yang disediakan untuk mendapatkan maklumat lanjut tentang mysqli_multi_query(), mysqli_more_results(), mysqli_next_result(), dan mysqli_store_result() fungsi.

Atas ialah kandungan terperinci Mengapa Pertanyaan MySQL Kedua Saya Gagal, dan Bagaimana `mysqli_multi_query()` Boleh Membantu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn