我想在數據庫中查詢。數據庫沒有在應用程序中創建,我已經創建了外部,並且我正在使用this tutorial作爲解釋。但是我有一個與列_id相關的錯誤。 在類DatabaseHelper,我有以下代碼:Android SQLite列_id錯誤,
public Cursor Search(Context context,String search){
SQLiteDatabase db= getReadableDatabase();
String cursorFactory = "SELECT * FROM words WHERE eng || ' ' || rus LIKE ?";
Cursor cursor = db.rawQuery(cursorFactory, new String[]{"%" + search + "%"});
return cursor;
}
活動中,我寫的代碼是:
public void search(View v){
text2search= searchText.getText().toString();
cursor= myDbHelper.Search(mContext, text2search);
adapter =new SimpleCursorAdapter(getBaseContext(),R.layout.list_item,
cursor,
new String[]{"rusword","engword","kind"},
new int[]{R.id.rusWord,R.id.engWord,R.id.knd});
wordsList.setAdapter(adapter);
}
而且我得到了_id相關的錯誤:(在logcat中)
09-03 14:12:38.018:E/AndroidRuntime(16581): java.lang.IllegalArgumentException異常:列 '_id' 不存在
致3210
但數據的基礎上,我創造,它有「_id」列:(我不能上傳圖片,所以這裏是鏈接https://www.dropbox.com/s/9a2ol1acrnxmzob/sql-db-rusWjpg.png)
謝謝!
試着問沒有'*'的db,但是用'「_id,rusword,engword,kind」'......如果re不是'_id'列,你應該得到錯誤... – Selvin