我試圖解決爲什麼我昨天收到此錯誤的一些代碼的問題:僅當試圖從表中查詢一列時,爲什麼會出現_id不存在錯誤?
java.lang.IllegalArgumentException: column '_id' does not exist
我有很多更多的代碼,尤其是我沒有必要,所以我剝奪了很多出來讓它更容易理解我出錯的地方。但基本上這是我的模式:
database.execSQL("CREATE TABLE events (" +
"_id INTEGER PRIMARY KEY, event_name TEXT" +
")");
正如人們可以說,看起來不錯。 除非我忘記閱讀,這顯然是最重要的。但後來我發現我的錯誤來自哪裏,或者至少我確定這是爲什麼。這個檢索遊標的代碼:
public Cursor getEventsName() {
return database.rawQuery("SELECT event_name FROM events", null);
}
根據android,這是錯誤。當我改變它爲:
public Cursor getEventsName() {
return database.rawQuery("SELECT * FROM events", null);
}
一切都是桃色。當前者時,它崩潰。任何理由爲什麼這是。我認爲在rawQuery()我可以做到這一點。只要我不包括where子句,我不是。任何幫助非常感謝。
我明白你的意思了。看起來確實是可能的罪魁禍首,但是當我不想要的時候,它非常煩人。當我永遠不會使用它時,或者至少從我在實施中預見到的情況來看,我覺得這是浪費,但我現在一定會把它包括進去。感謝您花時間回答我的問題。 – Andy