2012-02-22 12 views
10

क्या executeQuery:SELECT * ... के एफएमडीबी परिणाम आसानी से एक शब्दकोश में प्राप्त करने का कोई आसान तरीका है?FMDB परिणाम में

FMResultSet *appointmentResults = [[DataClass getDB] executeQuery:@"SELECT * FROM Appointments WHERE date = ?",currDateString]; 
while ([appointmentResults next]) { 
    //Create dictionary 
    //Add dictionary to array for later use 
} 

मैं सोच रहा था कि क्या कोई तरीका था कि मैं कुंजीपटल कुंजी कॉलम नाम और कॉलम मानों को मान सकता हूं। वांछित रूप से थोड़ी देर के भीतर प्रत्येक पंक्ति के माध्यम से एक लूप करने के बिना।

उत्तर

27

हाँ:

NSMutableArray *results = [NSMutableArray array]; 

FMResultSet *appointmentResults = [[DataClass getDB] executeQuery:@"SELECT * FROM Appointments WHERE date = ?",currDateString]; 
while ([appointmentResults next]) { 
    [results addObject:[appointmentResults resultDictionary]]; 
} 

-resultDictionaryFMResultSet पर निर्मित एक विधि है कि एक NSDictionary में वर्तमान टपल हो जाएगा, स्तंभ नाम से keyed है।

+0

बहुत बढ़िया! तुम्हें यह कहाँ मिला? एफएमडीबी दस्तावेज़ीकरण परिणाम देखकर डिक्टक्ट वहां नहीं है। – Bot

+0

@jostster यह 'FMResultSet.h' में है। –

+0

'-resultDict' को बहिष्कृत किया गया है, इसके बजाय' -resultDictionary' का उपयोग करें। – lucianf

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