关于Android中SQLite的更新

时间:2014-01-27 00:23:07

标签: android

关于Android中SQLite的更新。当您更改数据库的结构时,如何在不删除数据的情况下更新数据库?

1 个答案:

答案 0 :(得分:3)

您应该覆盖SQLiteOpenHelper中的onUpgrade方法。你应该编写这样的代码。

public void onUpgrade (SQLiteDatabase db,int oldVersion,int newVersion){
  String update = ALTER TABLE <table_name> ADD COLUMN <column_name> <column_type>;
  db.execSQL(update);
}

删除表格,添加行,插入/更新/删除数据应该在这里完成。

Alter表为您提供了对数据库表执行更新的非常有限的选项。如果要将数据复制到全新的结构中,则应考虑创建临时表,在此表中可以复制数据,创建新模式,然后在此升级方法中将数据从临时表复制到新表。 / p>

确保在创建DBHelper时正确更新了数据库版本号。