मैं तारीख को संग्रहीत करने के लिए डेटाबेस का उपयोग कर रहा हूं और एक कॉलम वापस लौटा चाहता हूं, जहां क्लाउड में कौन सी आईडी दी गई है।जांचें कि कर्सर के परिणाम
public String getPmax(String serial) {
String[] columns = new String[]{KEY_SERIAL, KEY_PMAX};
Cursor c = ourDatabase.query(DATABASE_TABLE, columns, "serial = " + serial,
null, null, null, null);
String result = "nothing found";
if(c != null) {
int iPmax = c.getColumnIndex(KEY_PMAX);
c.moveToFirst();
result = c.getString(iPmax);
}
return result;
}
इस कोड काम करता है अगर मैं एक धारावाहिक डेटाबेस में है कि उपयोग करते हैं लेकिन जब मैं एक धारावाहिक है कि डेटाबेस में नहीं है का उपयोग कर रहा यह मुझे एक शक्ति करीब देता है!
यह कहते हैं:
04-11 16:31:19.423: E/AndroidRuntime(21226): java.lang.RuntimeException: Unable to start activity ComponentInfo{nl.janjanus.solardetect/nl.janjanus.solardetect.DatabaseView}: android.database.sqlite.SQLiteException: no such column: g: , while compiling: SELECT serial, pmax FROM SolareCel WHERE serial = g
तो मेरे सवाल है: मैं कैसे अगर वहाँ परिणाम है की जाँच करते हैं? या मुझे यह जांचने की ज़रूरत है कि क्या सीरियल दिया गया है जो डेटाबेस में है?
कर्सर में कोई पंक्ति नहीं है, यह खाली है लेकिन उपरोक्त परीक्षण अभी भी असफल हैं, वह क्यों है? क्या कोई और जांच है? यह वास्तव में परेशान है। – Namratha
नोट: कर्सर को पहली स्थिति में सेट करने का दुष्प्रभाव है। एक कर्सर ऑब्जेक्ट को पारित करने में कोई समस्या हो सकती है जिसे किसी अन्य स्थिति में किसी विशिष्ट स्थिति में ले जाया गया है और फिर भी स्थिति में रहने की उम्मीद है :) –