Rumah > Artikel > pangkalan data > Bagaimana untuk Melihat Pertanyaan SQL Sebenar dalam Doktrin?
Apabila bekerja dengan Doktrin, ORM PHP, anda mungkin perlu memeriksa SQL mentah yang dihantar ke pangkalan data untuk menyemaknya sintaks atau mengoptimumkan prestasinya. Walau bagaimanapun, kaedah $q->getSQLQuery() hanya mengembalikan pernyataan yang disediakan, meninggalkan anda dengan tanda soal (?) dan bukannya parameter sebenar.
Alasannya ialah Doktrin menggunakan pernyataan yang disediakan, yang meningkatkan keselamatan dan prestasi pangkalan data. Ia membahagikan proses pertanyaan kepada dua langkah: menyediakan pernyataan dan menghantar parameter. Kaedah $query->getSql() hanya mengembalikan pernyataan yang disediakan, manakala kaedah $query->getParameters() menyediakan nilai sebenar.
Oleh itu, tiada pertanyaan SQL "sebenar" yang wujud di sisi PHP, dan Doktrin tidak dapat memaparkannya. Sebaliknya, anda perlu membina pertanyaan secara manual menggunakan parameter yang diambil daripada $query->getParameters() atau menggunakan alat seperti EXPLAIN PLAN MySQL untuk mengesan pelaksanaan pertanyaan.
Atas ialah kandungan terperinci Bagaimana untuk Melihat Pertanyaan SQL Sebenar dalam Doktrin?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!