Rumah > Java > javaTutorial > Bagaimana untuk Menggunakan Kad Liar 'Suka' dalam Penyata yang Disediakan?

Bagaimana untuk Menggunakan Kad Liar 'Suka' dalam Penyata yang Disediakan?

Mary-Kate Olsen
Lepaskan: 2024-11-19 14:13:02
asal
967 orang telah melayarinya

How to Use the

Menggunakan Kad Liar "suka" dalam Penyata Disediakan

Memahami Isu

Dalam pertanyaan pangkalan data , kad bebas "suka" biasanya digunakan untuk mencari data berdasarkan corak kata kunci. Apabila menggunakan pernyataan yang disediakan untuk meningkatkan keselamatan dan prestasi pertanyaan, mungkin sukar untuk memasukkan kad liar "suka" dengan berkesan.

Penyelesaian Menggunakan PreparedStatement

Untuk menggunakan "suka" " wildcard dalam kenyataan yang disediakan, anda tidak mengubah suai rentetan SQL itu sendiri. Sebaliknya, tetapkan "kata kunci%" dalam nilai yang anda tetapkan dalam penyata. Begini cara melakukannya untuk jenis carian yang berbeza:

  1. Padanan Awalan:

    // Replace escape characters to prevent conflict with wildcard
    notes = notes
     .replace("!", "!!")
     .replace("%", "!%")
     .replace("_", "!_")
     .replace("[", "![");
    PreparedStatement pstmt = con.prepareStatement(
         "SELECT * FROM analysis WHERE notes LIKE ? ESCAPE '!'");
    pstmt.setString(1, notes + "%");
    Salin selepas log masuk
  2. Padanan Akhiran:

    pstmt.setString(1, "%" + notes);
    Salin selepas log masuk
  3. Padanan Global:

    pstmt.setString(1, "%" + notes + "%");
    Salin selepas log masuk

Dengan menetapkan " keyword%" dalam nilai yang diberikan kepada pernyataan yang disediakan, anda boleh melakukan carian kad bebas dengan cekap tanpa menjejaskan keselamatan atau prestasi pertanyaan.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Kad Liar 'Suka' dalam Penyata yang Disediakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan