0
我已卸载的应用程序,创建新的模拟器,但问题仍然存在,我没有线索,所以时间互联网帮助:)。 我有一列名为“sms_sentdate”在日志中这是失踪的列,而我检查的值是好的,问题出在架构,我找不出来的地方。Android SQLite问题表...没有列名
当你们在这里,请关于如何告诉应用程序,如果我当前的方法是错误的,架构已经更新。
public class SMSdb extends SQLiteOpenHelper{
private final static String DB_NAME = "SMSDB";
private final static int DB_VERSION = 4;
private static final String KEY_ID = "sms_id";
private static final String KEY_Text = "sms_text";
private static final String KEY_SMSReceiver = "sms_reciever";
private static final String KEY_Recurrence = "sms_recurrence_id";
private static final String KEY_SentDate = "sms_sentdate";
private static final String TABLE_SMS = "sms";
private static final String[] COLUMNS = { KEY_ID, KEY_Text, KEY_SMSReceiver, KEY_Recurrence, KEY_SentDate};
public final static String DB_SMSdb_TABLE_CREATE = "create table sms " +
"("+KEY_ID+" integer primary key autoincrement, " +
KEY_Text +" text not null, "+
KEY_SMSReceiver + " text not null,"+
KEY_Recurrence+" integer);"+
KEY_SentDate+" text);";
public SMSdb(Context context)
{
super(context, DB_NAME, null, DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase database) {
// TODO Auto-generated method stub
Log.i("Database", "Database creating");
database.execSQL(DB_SMSdb_TABLE_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
database.execSQL("DROP TABLE IF EXISTS sms");
onCreate(database);
}
public void addSms(SMS sms){
Log.d("addSMS", sms.toString());
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_Text, sms.getText());
values.put(KEY_SMSReceiver, sms.getSmsReceiver());
values.put(KEY_Recurrence, sms.getSms_recurrence_id());
values.put(KEY_SentDate, sms.getSmsSentDate());
db.insert(TABLE_SMS,
null,
values);
db.close();
}
}
打我吧:) –
该死的! ** Bloody Semicolon ** –
谢谢! @laalto,我检查了一切,除了**; **,现在我感到羞愧:P –