SORU
23 Kasım 2011, ÇARŞAMBA


Kullanarak "gibi" hazır deyimi joker olarak

Hazırlanmış deyimleri mysql veritabanı sorguları yürütmek için kullanıyorum. Ve bir arama işlevi, bir tür anahtar kelime dayalı uygulamak istiyorum.

Bunun için LIKE anahtar kelime kullanmak için, en azından bunu biliyorum ihtiyacım var. Ve ayrıca daha önce hazırlanan ifadeleri kullandık, ama nasıl kullanılacağını bilmiyorum aşağıdaki kodu çünkü LIKE 'keyword%' eklemek istiyorsunuz?

Doğrudan (1, notes "%") filan gibi pstmt.setString(1, notes) kullanabilirim. Web'de bu ama iyi cevap herhangi bir mesaj görüyorum.

PreparedStatement pstmt = con.prepareStatement(
      "SELECT * FROM analysis WHERE notes like ?");
pstmt.setString(1, notes);
ResultSet rs = pstmt.executeQuery();

CEVAP
23 Kasım 2011, ÇARŞAMBA


Hazırlanmış deyimi değeri kendi içinde SQL dize değil, bunu ayarlamanız gerekir.

Yani, bu öneki-maç: bir yapmalı

PreparedStatement pstmt = con.prepareStatement(
        "SELECT * FROM analysis WHERE notes like ?");
pstmt.setString(1, notes   "%");

veya sonek-maç:

pstmt.setString(1, "%"   notes);

ya da küresel bir maç:

pstmt.setString(1, "%"   notes   "%");

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Brandon McCrary

    Brandon McCr

    15 Ocak 2012
  • National Geographic

    National Geo

    7 Mayıs 2006
  • Thom Hall

    Thom Hall

    24 Kasım 2006