Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Menggunakan Operator LIKE dengan Penyata Disediakan PDO dengan Betul?

Bagaimanakah Saya Menggunakan Operator LIKE dengan Penyata Disediakan PDO dengan Betul?

DDD
DDDasal
2024-12-05 07:12:15805semak imbas

How Do I Correctly Use the LIKE Operator with PDO Prepared Statements?

Melaksanakan Pertanyaan LIKE dalam PDO

Apabila menggunakan operator LIKE dalam pertanyaan PDO, adalah penting untuk memastikan sintaks yang betul untuk mencapai carian yang diingini keputusan. Dalam pertanyaan yang disediakan, peletakan % tanda yang salah dalam rentetan $query menyebabkan isu.

Pembetulan Sintaksis

Pertanyaan yang diubah suai harus mengandungi % tanda dalam tatasusunan $params, bukan dalam rentetan pertanyaan:

$query = "SELECT * FROM tbl WHERE address LIKE ? OR address LIKE ?";
$params = array("%$var1%", "%$var2%");

Pengubahsuaian ini memastikan bahawa Pengendali LIKE beroperasi pada pembolehubah $var1 dan $var2 sambil melepaskannya dalam pernyataan yang disediakan.

Penjelasan

Dalam PDO, pernyataan yang disediakan menggunakan ruang letak (?) untuk mewakili nilai dinamik. Apabila melaksanakan pertanyaan, tatasusunan $params menyediakan nilai yang sepadan untuk menggantikan ruang letak. Dalam pertanyaan asal, tanda % diletakkan dalam rentetan $query, yang menyebabkan PDO menganggapnya sebagai aksara literal.

Dengan mengalihkan tanda % ke dalam tatasusunan $params, anda menunjukkan bahawa ia adalah sebahagian daripada nilai dinamik yang dicari, bukannya sebahagian daripada sintaks pertanyaan itu sendiri.

Atas ialah kandungan terperinci Bagaimanakah Saya Menggunakan Operator LIKE dengan Penyata Disediakan PDO dengan Betul?. 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