首先我创建了一个表:
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE " + "sorular"
+ " (_id INTEGER PRIMARY KEY AUTO_INCREMENT,"
+ "soruIcerik TEXT," + " siklar1 TEXT," + " siklar2 TEXT,"
+ " siklar3 TEXT," + "siklar4 TEXT," + "cevap INTEGER);");
}
然后我添加了数据
之后,我决定在我的表中添加一个新列,并编写了以下代码:
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if(newVersion > oldVersion){
db.execSQL("ALTER TABLE sorular ADD COLUMN zorluk INTEGER");
}
}
我将数据作为手册添加到新列
但是当我想从新列访问数据时,应用程序意外停止。代码是这样的:
String soruMetin = okunanlar.getString(okunanlar.getColumnIndex("soruIcerik"));//it's normal
String siklar1 = okunanlar.getString(okunanlar.getColumnIndex("siklar1")); //it's normal
String siklar2 = okunanlar.getString(okunanlar.getColumnIndex("siklar2")); //it's normal
String siklar3 = okunanlar.getString(okunanlar.getColumnIndex("siklar3")); //it's normal
String siklar4 = okunanlar.getString(okunanlar.getColumnIndex("siklar4")); //it's normal
int dogruCevap = okunanlar.getInt(okunanlar.getColumnIndex("cevap")); //it's normal
int zorluk = okunanlar.getInt(okunanlar.getColumnIndex("zorluk")); //it has problem
问题是什么?如何解决?