2012-01-25 18 views
10

के साथ सही काम नहीं कर रही है मैं एफएमडीबी का उपयोग कर रहा हूं, जो SQLite के लिए एक रैपर है।एफएमडीबी क्वेरी LIKE

FMResultSet *athlete = [db executeQuery:@"SELECT * FROM athletes WHERE athlete_name LIKE ?", search_text]; 

का उपयोग करता है, तो मैं खिलाड़ी का सही नाम में टाइप इस मैं वापस एक परिणाम प्राप्त कर सकते हैं: http://github.com/ccgus/fmdb

यहाँ मेरी क्वेरी रेखा है। लेकिन, मैं पसंद का उपयोग करने की कोशिश कर रहा हूं ताकि मैं नाम पर खोज कर सकूं। लेकिन, जब मैं बस के बजाय%?% जोड़ता हूं? ... कुछ भी वापस नहीं आता है। और कोई त्रुटि नहीं है।

क्या कोई इससे पहले इसमें भाग गया है और पता है कि मैं क्या गलत कर रहा हूं?

सभी को धन्यवाद!

+0

मैं इसे साथ अपरिचित उन – bshirley

उत्तर

30

वाइल्डकार्ड वर्णों (%) प्रतिस्थापित चर का हिस्सा है, नहीं क्वेरी स्ट्रिंग होना जरूरी:

FMResultSet *rs = [db executeQuery:@"SELECT * FROM athletes WHERE athlete_name LIKE ?", 
        [NSString stringWithFormat:@"%%%@%%", search_text]]; 
+0

आह ठीक लिए FMDB के लिए एक लिंक प्रदान सुझाव देंगे ... आपका बहुत बहुत धन्यवाद। मैं आज 1/2 सो रहा हूं, इसलिए मुझे लगता है कि मैं कुछ आसान याद कर रहा था। =) – TheTC

+0

मुझे इसे काम करने में कठिनाई हो रही है। क्या कोई वैकल्पिक वाक्यविन्यास है? मैं विचारों से बाहर चला रहा हूँ। – Echilon

+0

आह अच्छा !! धन्यवाद @omz। मैं mysql के लिए बेहद नया हूं, तो क्या आप समझेंगे कि %%% @ %% का अर्थ क्या है? मुझे% @ मिल गया है ... लेकिन दूसरे% का महत्व क्या है? और यह ?। मैं मान रहा हूँ? एसक्यूएल% के बराबर है @ लेकिन मुझे अभी भी यह चेतावनी मिलती है: 'डेटा स्ट्रिंग प्रारूप स्ट्रिंग' – crewshin

संबंधित मुद्दे