作者d630200x (DOGE)
看板AndroidDev
標題[問題] 資料庫的第二張表沒有資料
時間Tue May 16 11:42:18 2017
使用程式為Android Studio
程式碼如下
http://imgur.com/8hhkQ0D.jpg
這是我寫的資料插入方法
http://imgur.com/5vXU0dR.jpg
這是我寫在onCreate裡的
我沒有用到SQLiteOpenHelper,而是把資料庫直接建在表單裡
當APP打開時,會先看手機裡有沒有資料,沒有的話才加進去
奇怪的是我store裡的資料有好好加進去,其他四個資料表雖然有建立起來,但資料卻沒
有放進去,請問是為什麼?
報錯顯示在插入時出錯,但我的語法跟addData_store完全一樣阿?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.96.224.228
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1494906142.A.48E.html
1F:→ pttworld: 缺少storekind那段 05/16 12:05
2F:→ d630200x: 那個打在下面了,截圖截不到那邊 05/16 12:21
3F:→ pttworld: id怎麼產生,會否重複,如果是key 05/16 12:42
表的欄位長這樣
http://imgur.com/2DLgu4V.jpg
※ 編輯: d630200x (120.96.224.228), 05/16/2017 14:49:04
4F:→ ssccg: 所以錯誤訊息是什麼... 05/16 15:12
5F:→ pttworld: skind要插入四欄位? 資訊有限難抓。 05/16 15:15
當我
cursor = db.rawQuery("SELECT * FROM " +tb_StoreKind,null)
adapter=new SimpleCursorAdapter(this,R.layout.item,cursor,StoreKind
,new int[]{R.id.name,R.id.address,R.id.phone}
,0);
這樣會是錯的
跳出的錯誤這樣
http://imgur.com/iy0e7yz.jpg
http://imgur.com/ZBoFY6Z.jpg
把上面的tb_StoreKind跟StoreKind,改成tb_store跟Store的話不會報錯
這邊應該是adapter的問題吧?adapter刪掉後就可以運行,但cursor裡還是沒有資料
所以在資料嵌入還是有問題
※ 編輯: d630200x (120.96.224.228), 05/16/2017 16:14:16
6F:→ ssccg: table TB_StoreKind has no column named store_kind 05/16 16:17
7F:→ ssccg: 這不是寫的很清楚嗎,你的欄位叫StoreKind不叫store_kind 05/16 16:17
8F:→ ssccg: 下一個也是TB_SKind沒有favorite_number,叫favorite_count 05/16 16:19
9F:→ ssccg: 建議你create statement也用同樣的常數字串去組比較不會寫 05/16 16:20
10F:→ ssccg: 錯,之後要改也方便 05/16 16:21
沒想到結果問題是這麼單純,以後我還是乖乖建立字串去+好了……
而現在有個新問題就是我的Foreign Key似乎沒有作用
http://imgur.com/erwKySn.jpg
這樣我的外鍵功能應該是打開了吧?
http://imgur.com/AwtpNCd.jpg
而我的tb_StoreKind的store_id改成這樣,但當我輸入的數字如果超過tb_store裡_id
的數量,資料還是會key進去
照理來講應該是key不進去的吧?
※ 編輯: d630200x (120.96.224.228), 05/16/2017 17:15:20