[英]Android app crashes when retrieving data from SQLite database
這是檢索方法:
public Cursor getData(String subj) {
String selectQuery = "SELECT " + subj + " FROM " + TABLE_PRIMEIRO;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
if(cursor != null){
cursor.moveToFirst();
}
return cursor;
}
這就是我在TextView中顯示它的方式:
Cursor cursor = db.getData("columnname");
cursor.moveToFirst();
String dataget = cursor.getString(cursor.getColumnIndex("columnname"));
if (dataget!= null){
textView1.setText(dataget);
}
該應用程序是針對API 23+開發的,此代碼可在API 23仿真器和我自己的手機(具有Android 7.1)上正常運行,但不適用於其他手機。 (Android 7.0和6.0)。
通過更改來修復它:
Cursor cursor = db.getData("columnname");
cursor.moveToFirst();
String dataget = cursor.getString(cursor.getColumnIndex("columnname"));
if (dataget!= null){
textView1.setText(dataget);
}
至:
Cursor cursor = db.getData("columnname");
cursor.moveToFirst();
if (cursor.moveToFirst()){
String dataget = cursor.getString(cursor.getColumnIndex("columnname"));
if (dataget!= null){
textView1.setText(dataget);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.