2012-06-02 26 views
0

我有一個列表視圖,從sqlite數據庫填充。 egrohDB.execSQL("CREATE TABLE IF NOT EXISTS " + EGROH_DB_TABLE_ITEMS + " (ident integer primary key AUTOINCREMENT, " + "id integer(15), " + ...IllegalArgumentException:列x無效

要我用rawQueries數據庫獲取數據和將數據插入我使用InsertHelper:數據庫與創建。我在表格中添加了一行。現在我得到一個IllegalArgumentException,mit id行是無效的。

06-02 17:48:24.340: E/AndroidRuntime(23200): FATAL EXCEPTION: main 
06-02 17:48:24.340: E/AndroidRuntime(23200): java.lang.IllegalArgumentException: column 'id' is invalid 
06-02 17:48:24.340: E/AndroidRuntime(23200): at android.database.DatabaseUtils$InsertHelper.getColumnIndex(DatabaseUtils.java:1078) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at com.y5apps.DatabaseController.insertData(DatabaseController.java:273) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at com.y5apps.EgrohCatalogue.parseData(EgrohCatalogue.java:149) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at com.y5apps.EgrohCatalogue$3.onClick(EgrohCatalogue.java:319) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:166) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at android.os.Handler.dispatchMessage(Handler.java:99) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at android.os.Looper.loop(Looper.java:137) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at android.app.ActivityThread.main(ActivityThread.java:4424) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at java.lang.reflect.Method.invokeNative(Native Method) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at java.lang.reflect.Method.invoke(Method.java:511) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
06-02 17:48:24.340: E/AndroidRuntime(23200): at dalvik.system.NativeStart.main(Native Method) 

的誤差hown在這一行:

final int id_c = ih.getColumnIndex("id"); 

我不知道這是什麼意思例外。該怎麼辦?

+0

引用列'item_id'的日誌輸出中的第二行不存在? – t0mm13b

回答

0

您創建列「ID」,並要求列「ITEM_ID」 ......不是在你的代碼顯示,但地方....

這是您的插入。

+0

對不起,這是一個複製和粘貼失敗...我試圖改變列的名稱。這是新的logcat和'舊'代碼。 –

+0

您增加了數據庫版本嗎?或者卸載並重新安裝應用程序?如果你沒有,那麼你的數據庫更改沒有完成,因爲'onCreate'或'onUpgrade'都沒有被調用... – Barak

+0

這不是你提到的錯字,而是另一個錯誤。感謝您的建議,最終讓我得到了解決方案。 :) –

相關問題