Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Semak Pertanyaan SQL Terlaksana Akhir Apabila Menggunakan Pertanyaan Berparameter PDO dalam PHP?

Bagaimanakah Saya Boleh Semak Pertanyaan SQL Terlaksana Akhir Apabila Menggunakan Pertanyaan Berparameter PDO dalam PHP?

DDD
DDDasal
2024-11-29 14:31:111021semak imbas

How Can I Check the Final Executed SQL Query When Using PDO Parameterized Queries in PHP?

Menyemak Pertanyaan Berparameter Akhir dalam PHP dengan PDO

Apabila bekerja dengan PDO dalam PHP untuk menyambung ke pangkalan data MySQL, kadangkala ia menjadi perlu untuk semak pertanyaan SQL akhir yang akan dilaksanakan. Soalan asal menggesa, "Adakah terdapat cara untuk menyemak perkara yang benar-benar dilaksanakan oleh pangkalan data?"

Jawapan Ringkas: Tidak

Seperti yang dinyatakan dalam jawapan, tidak ada cara mudah untuk mendapatkan kembali pertanyaan akhir di sebelah PHP. Sebabnya ialah pertanyaan berparameter dihantar ke pangkalan data dalam bahagian berasingan: pertanyaan itu sendiri (dengan token) dan parameter yang sepadan. Pertanyaan akhir dihimpun dan dilaksanakan hanya pada bahagian pangkalan data.

Penyelesaian: Pengelogan Pertanyaan

Walaupun pengambilan terus pertanyaan akhir tidak dapat dilakukan, penyelesaian boleh dilakukan dilaksanakan menggunakan pengelogan pertanyaan. Dengan mengubah suai fail konfigurasi my.cnf (atau my.ini) untuk memasukkan baris berikut:

log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]

Semua pertanyaan SQL yang dilaksanakan pada pelayan akan dilog ke fail yang ditentukan. Ambil perhatian bahawa ini hanya boleh digunakan untuk tujuan penyahpepijatan dan tidak boleh digunakan dalam persekitaran pengeluaran.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak Pertanyaan SQL Terlaksana Akhir Apabila Menggunakan Pertanyaan Berparameter PDO dalam PHP?. 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