ios實戰 資料庫更新公升級方案

2021-07-13 04:04:43 字數 761 閱讀 5602

我們常使用fmdb或者其他方式建立sqlite資料庫,但是由於版本迭代問題,常常有需求要更新資料庫,比如加欄位、刪除、修改字段等等,怎麼樣才能公升級資料庫且保持原來存的資料有效呢,上**:

const static nsinteger family_list_db_manager_ver = 1;

@implementation ksfamilylistdbmanager

+ (instancetype)sharedmanager

);return s_instance;

}- (id)init  else if (ver < family_list_db_manager_ver) 

}return self;

}- (void)upgrade 

//公升級

[self upgrade:oldversionnum];

// 儲存新的版本號到庫中 -這裡大家可以使用nsuserdefault儲存

[[configdbmanager sharedmanager] setfamilylistdbmanagerversion:family_list_db_manager_ver];

}- (void)upgrade:(nsinteger)oldversion 

switch (oldversion) 

oldversion ++;

// 遞迴判斷是否需要公升級

[self upgrade:oldversion];

}- (void)upgradefrom1to2 

Android 資料庫公升級解決方案

請考慮如下情況 在資料庫公升級時,不同版本的資料庫,他們定義的表結構完全可能是不一樣的,比如v1.0的表a有10個column,而在v1.1的表a有12個colum,在公升級時,表a增加了兩列,此時我們應該怎麼做呢。1,將表a重新命名,改了a temp。2,建立新錶a。3,將表a temp的資料插入...

Android資料庫公升級解決方案

public class dbopenhelper extends sqliteopenhelper override public void oncreate sqlitedatabase db override public void onupgrade sqlitedatabase db,in...

資料庫公升級

公升級 的版本時,我們有時候希望可以把原資料庫中的資料也保留下來,那麼這個時候我們就需要用到資料庫的公升級。在 android 中sqliteopenhelper 中定義了 onupgrade sqlitedatabase db,int oldversion,int newversion 函式來進行...