Android 解決sqlite無(wú)法創(chuàng)建新表的問(wèn)題
使用SQLite時(shí),繼承SQLiteOpenHelper,
onCreate方法只有在第一次創(chuàng)建數(shù)據(jù)庫(kù)的時(shí)候才會(huì)被調(diào)用,
因此,重新更改或者添加表時(shí),需要在DDMS里面刪掉原來(lái)的.db文件,重新運(yùn)行,就可以~
補(bǔ)充知識(shí):Android studio sqllite數(shù)據(jù)庫(kù)操作中關(guān)于表的創(chuàng)建和無(wú)法插入數(shù)據(jù)時(shí)的注意事項(xiàng)以及解決
創(chuàng)建表的sql語(yǔ)句
1.如果有條件的話。最好使用sqllite expert編輯代碼測(cè)試,再?gòu)?fù)制到Android studio中
2.如果沒(méi)有的話就要注意數(shù)據(jù)類(lèi)型(integer、text、float等)前面一定要有一個(gè)空格否則
屬性名就會(huì)變成**“KEY_IDInteger”**依次類(lèi)推。造成數(shù)據(jù)無(wú)法插入的錯(cuò)誤。會(huì)造成android.database.sqlite.SQLiteException: table XXX has no column named XXX(code 1):的錯(cuò)誤
3.on create() 方法只在第一次創(chuàng)建的時(shí)候被調(diào)用,后面就算對(duì)代碼進(jìn)行了修改,表的結(jié)構(gòu)也還是沒(méi)有改變。想要重新建表的話需要打開(kāi)Device file Explorer
在Data->data目錄下找到項(xiàng)目對(duì)應(yīng)的包名然后根據(jù)圖中目錄,后綴為.db的文件就是建好的數(shù)據(jù)庫(kù),然后刪除databases目錄下面的所有文件。再次運(yùn)行程序,便會(huì)重新建庫(kù)。
以上這篇Android 解決sqlite無(wú)法創(chuàng)建新表的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Ajax提交post請(qǐng)求案例分析2. python 批量下載bilibili視頻的gui程序3. 使用css實(shí)現(xiàn)全兼容tooltip提示框4. python numpy庫(kù)np.percentile用法說(shuō)明5. 一篇文章弄清楚Ajax請(qǐng)求的五個(gè)步驟6. PHP 面向?qū)ο蟪绦蛟O(shè)計(jì)之類(lèi)屬性與類(lèi)常量實(shí)現(xiàn)方法分析7. python中HTMLParser模塊知識(shí)點(diǎn)總結(jié)8. Java Spring WEB應(yīng)用實(shí)例化如何實(shí)現(xiàn)9. CSS自定義滾動(dòng)條樣式案例詳解10. JSP實(shí)現(xiàn)客戶(hù)信息管理系統(tǒng)
