2012-10-27 12 views
5

मुझे यह त्रुटि किसी डिवाइस पर मिलती है, जबकि यह किसी अन्य डिवाइस पर अच्छा काम करती है। यहाँ त्रुटि है:एंड्रॉइड: SQLiteException: सभी डिवाइसों पर कोई त्रुटि नहीं

Caused by: android.database.sqlite.SQLiteException: not an error 
    at android.database.sqlite.SQLiteQuery.nativeFillWindow(Native Method) 
    at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:86) 
    at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:164) 
    at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:156) 
    at com.Orange.MakeVisits.Themes.onCreate(Themes.java:162) 

मैं एक प्रश्न निष्पादित और लाइन है कि कर्सर अशक्त है अगर जाँच करता है पर, मैं इस त्रुटि मिलती है। यहाँ मेरी कोड है:

String stmtGetThemes = "SELECT * FROM pr_fields_descriptor a " 
    + "inner join pr_fields_starring b on a.id_fields_descriptor = b.fields_descriptor_id " 
    + "where b.starring_id = '"+pos_starring_id+"' and a.theme_id='"+themes_ids[m]+"' order by form_rank"; 

    Cursor getThemesCursor1 = db.databaseQuery(stmtGetThemes); 

    if (getThemesCursor1!=null && getThemesCursor1.getCount()>0){ 
    //---- 
    } 

और databasequery इस विधि (वर्ग कि SQLiteOpenHelper फैली में परिभाषित किया गया है) है:

public Cursor databaseQuery(String stmt) { 
     Cursor cursor = db.rawQuery(stmt, null); 
     return cursor; 
    } 

किसी भी विचार क्या इस त्रुटि पैदा कर सकता है? बयान अच्छा नहीं है? यह अन्य उपकरणों पर क्यों काम करता है? किसी भी विचार का स्वागत है। सलाह में धन्यवाद।

+0

यदि 'pos_starring_id' और' themes_ids [m] 'पूर्णांक हैं, तो आपको क्वेरी के चारों ओर उद्धरण ('' ') अंक हटा देना चाहिए ताकि उन्हें स्ट्रिंग के रूप में नहीं माना जा सके। – Barak

उत्तर

0

क्वेरी में सरणी प्रकार Paramters पास मत करो, कभी कभी यह

int themes_id = themes_ids[m]; 

String stmtGetThemes = "SELECT * FROM pr_fields_descriptor a inner join pr_fields_starring b on a.id_fields_descriptor = b.fields_descriptor_id where b.starring_id = '"+pos_starring_id+"' AND a.theme_id = '"+themes_id+"' ORDER BY form_rank"; 

Cursor getThemesCursor1 = db.databaseQuery(stmtGetThemes); 

if (getThemesCursor1 != null && getThemesCursor1.getCount() != 0){ 
//---- 
} 
+0

मैंने कहा जैसे मैंने कहा, लेकिन यह अभी भी दुर्घटनाग्रस्त हो गया है। – Gabrielle

+0

व्हाइटसाइट का उपयोग ठीक से किया जाता है – RajeshVijayakumar

+0

मुझे कोई सफेद जगह नहीं दिखती है जो इसे क्रैश कर सकती है। – Gabrielle

0
String stmtGetThemes = "SELECT * FROM pr_fields_descriptor a " 
    + "inner join pr_fields_starring b on a.id_fields_descriptor = b.fields_descriptor_id " 
    + "where b.starring_id = '"+pos_starring_id+"' and a.theme_id='"+themes_ids[m]+"' order by form_rank"; 

काम नहीं करेगा द्वारा इस क्वेरी को समाप्त नहीं है ","।

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