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

  • Christopher Bill

    Christopher

    30 NİSAN 2009
  • hidetake takayama

    hidetake tak

    3 Mart 2009
  • Jeremy Gallman

    Jeremy Gallm

    11 NİSAN 2012