ISSUE (LogCat)
sqlite返回:错误代码= 1,msg =没有这样的表...
android.database.sqlite.SQLiteException:没有这样的表:....
CODE
public void onCreate(SQLiteDatabase db) {
Log.v("SQLAdapter","onCreate(SQLiteDatabase db)");
db.execSQL("CREATE TABLE "+tablename
+" ("
+col1+ " TEXT PRIMARY KEY , "
+col2+ " TEXT , "
+col3+ " TEXT , "
+col4+ " TEXT , "
+col5+ " TEXT , "
+col6+ " TEXT , "
+col7+ " TEXT , "
+col8+ " TEXT "
+")");
db.execSQL("CREATE TABLE "+configTable
+" ("
+colName+ " TEXT PRIMARY KEY , "
+colValue+ " TEXT "
+")");
ContentValues cv=new ContentValues();
cv.put(colName, "updated");
cv.put(colValue, "-1");
db.insert(configTable, colName, cv);
}
RESULT
正在创建configTable
未创建tablename
答案 0 :(得分:10)
只需在使用SQliteDatabase实现的数据库类中更改数据库名称
我面临同样的问题,使用相同的技巧。
答案 1 :(得分:1)
在真实设备上进行测试时遇到了同样的异常。在我向数据库添加新表后,我不得不从设备中卸载旧的应用程序版本。只有这样才能再次调用SQLiteOpenHelper
子类中的onCreate()方法。
答案 2 :(得分:0)
同样的问题。通过删除使用adb命令
创建的旧xxx.db来解决此问题 adb shell rm /data/data/xxx.db
答案 3 :(得分:0)
“没有这样的表”问题解决了!
当您使用database.db时,Android还会创建另一个名为database(不带扩展名)的文件,其中包含android_metadata表。
最后,我解决了改变 DB_NAME =“mydb” 同 DB_NAME = “mydb.db”
答案 4 :(得分:0)
我也遇到了“没有这样的桌子”的问题。这不是数据库或表格的问题,而是来自您的应用程序。
只是你重新安装了我们的应用程序,一切都应该没问题。