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

  • Joanna Okrajni

    Joanna Okraj

    4 EYLÜL 2010
  • michaeljacksonVEVO

    michaeljacks

    2 EYLÜL 2009
  • Numberphile

    Numberphile

    15 EYLÜL 2011