2012-10-27 13 views
5

Başka bir cihazda iyi çalışırken, bu hatayı bir cihazda alıyorum. İşte hatadır:Android: SQLiteException: tüm cihazlarda bir hata değil

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) 

Ben bir sorgu yürütmek ve İmleç boş olup olmadığını denetler satırında, bu hatayı alabilirsiniz. İşte benim kodudur:

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){ 
    //---- 
    } 

ve databasequery (SQLiteOpenHelper uzanır sınıfında tanımlanır) bu yöntem:

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

herhangi bir fikir bu hataya neden ne? Açıklama iyi değil mi? Neden başka cihazlarda çalışıyor? Herhangi bir fikir açığız. Advace'da teşekkürler. ";"

+0

"pos_starring_id" ve "themes_ids [m]" ifadeleri tamsayıysa, sorgudaki dizeleri (''') işaretlerini kaldırmalı ve böylece dizeleri işlem görmemelidir. – Barak

cevap

0

bazen bu sorguyu sona etmeyin

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

Dediğin gibi değiştim ama hala çöküyor. – Gabrielle

+0

Beyaz boşlukların düzgün çalıştığını kontrol edin – RajeshVijayakumar

+0

Çökmesine neden olabilecek herhangi bir boşluk göremiyorum. – 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"; 

çalışmaz, Query dizi Tipi paramters geçmek vermeyin.

İlgili konular