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

  • Bryan Smith

    Bryan Smith

    12 Mart 2006
  • Lin Steven

    Lin Steven

    17 EKİM 2006
  • Moodle

    Moodle

    11 Mayıs 2010