public class dbopenhelper extends sqliteopenhelper
@override
public void oncreate(sqlitedatabase db)
@override
public void onupgrade(sqlitedatabase db, int oldversion, int newversion)
}
v2需要將feedback增加乙個欄位username,使用者從v1公升級到v2時,需要改變庫表結構並且將原來的feedback進行遷移,v2發版時sqliteopenhelper如下:
public class dbopenhelper extends sqliteopenhelper
/*** 新增欄位username
* @param db
*/@override
public void oncreate(sqlitedatabase db)
/*** 使用者從v1公升級到v2時改變庫表結構並將v1資料庫中的資料進行遷移
* @param db
* @param oldversion
* @param newversion
*/@override
public void onupgrade(sqlitedatabase db, int oldversion, int newversion)
}}
v3在v2的基礎上增加了表crash,使用者公升級方案可能是:v1-v3,v2-v3,v3發版時sqliteopenhelper如下:
public class dbopenhelper extends sqliteopenhelper
/*** 建表feedback、crash
** @param db
*/@override
public void oncreate(sqlitedatabase db)
/*** 使用者的公升級方案可能為v1-v3;v2-v3
** @param db
* @param oldversion
* @param newversion
*/@override
public void onupgrade(sqlitedatabase db, int oldversion, int newversion) else if (oldversion==2)
}private void upgradetov2(sqlitedatabase db)
private void upgradetov3(sqlitedatabase db)
Android 資料庫公升級解決方案
請考慮如下情況 在資料庫公升級時,不同版本的資料庫,他們定義的表結構完全可能是不一樣的,比如v1.0的表a有10個column,而在v1.1的表a有12個colum,在公升級時,表a增加了兩列,此時我們應該怎麼做呢。1,將表a重新命名,改了a temp。2,建立新錶a。3,將表a temp的資料插入...
android 資料庫 公升級設計
很久以前設計的資料庫建立與公升級的方法,此設計避免了公升級的時候需要多處修改的弊端。如下 public class dbadatper 資料庫名 private static final string database name test 建表語句 此部分只是使用者第一次安裝的時候會在oncreat...
Android中資料庫公升級說明
1.幫助文件裡說的 資料庫公升級 是指什麼?你開發了乙個程式,當前是1.0版本。該程式用到了資料庫。到1.1版本時,你在資料庫的某個表中增加了乙個字段。那麼軟體1.0版本用的資料庫在軟體1.1版本就要被公升級了。2.資料庫公升級應該注意什麼?軟體的1.0版本公升級到1.1版本時,老的資料不能丟。那麼...