数据库升级有俩个靠谱的方法,
(1)db.execSQL("ALTER TABLE test ADD COLUMN age");
(2) db.beginTransaction();
db.execSQL("ALTER TABLE test RENAME TO _Name");
db.execSQL("CREATE TABLE test(id integer primary key autoincrement , PassWord VARCHAR(20) NOT NULL,"+ " UserName VARCHAR(32) NOT NULL , Age VARCHAR(16) NOT NULL)");
db.execSQL("INSERT INTO test SELECT id, " + str + str + ", name, age FROM _Name");
db.setTransactionSuccessful();
db.endTransaction();
android中自带的数据库是通过一个SqliteOpenHelper 类来进行使用的,在第一次调用的时候执行onCreate(),进行数据库表的创建
当数据库当前版本小于新数据库版本的时候会调用public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
在这里边可以进行数据库的升级。
方法一就是通过给表增加一个新的字段;
方法二就是通过修改当前数据库表的名称,作为临时表,在创建一张数据库表来插入临时表中的数据,这样就实现了数据的升级。