所以我再一次对我的神奇宝贝相关应用程序的数据库内容有一点问题,现在我正在重新审视应用程序开发的那部分......一个相对较新的(数据库类可能是问题所在几乎是最新的[参见下面提到的修复])我的 Eclipse 项目的版本在这里:http ://www.filehosting.org/file/details/429262/PokeUtility.zip
所以,问题是,我将此代码添加到我的 mainactivity 中只是为了测试我是否可以将数据放入数据库中:
DatabaseHandler db = new DatabaseHandler(this) ;
db.addPokemon(new Pokemon(001, "Bulbasaur", "Grass", "Poison")) ;
但是会发生什么,它似乎像这样抛出 SQLiteException ( http://oi47.tinypic.com/332v49c.jpg ) 似乎是说我的数据库中的表中没有“type2”列?:/ 我没有在 DatabaseHandler 类中设置正确吗?哦,顺便说一句,我认为这很重要:鉴于我链接了一个稍微过时的项目版本,需要进行一个更正:DatabaseHandler's
onCreate 应该读作:
String CREATE_POKEMON_TABLE = "CREATE TABLE " + TABLE_POKEMON + "("
+ KEY_DEX_NO + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
+ KEY_TYPE + " TEXT," + KEY_TYPE2 + "TEXT" + ")";
db.execSQL(CREATE_POKEMON_TABLE);
我相信链接的 zip 文件中的版本在 SQL 中缺少逗号。