iOS數(shù)據(jù)庫版本升級(jí)問題

1.判斷數(shù)據(jù)庫版本號(hào)和保存數(shù)據(jù)庫版本號(hào)

NSString* constkdbManagerVersion =@"DBManagerVersion";
const static NSIntegerDB_MANAGER_VER =1;

保存新版本號(hào)存儲(chǔ)到NSUserDefaults中

2.數(shù)據(jù)庫升級(jí)

// 獲取舊版本號(hào)

// 升級(jí)

// 判斷是否需要升級(jí)

// 執(zhí)行版本1到版本2的更新

3.數(shù)據(jù)庫升級(jí)的SQL語句操作
// 變更數(shù)據(jù)庫表為一個(gè)舊數(shù)據(jù)表

NSString*sqlStr =  [NSString stringWithFormat:@"ALTER TABLE %@ RENAME TO %@",self.tableName, [self.tableName stringByAppendingString:@"_Old"] 

// 執(zhí)行SQL語句操作

[db executeUpdate:sqlStr];

// 創(chuàng)建新的數(shù)據(jù)表

NSString*executeStr = [NSString stringWithFormat:@"create table if not exists %@ (LocID integer primary key autoincrement not null,messageID text unique,Content text,TypeName text,SendTime text,CreateTime integer,Status integer,msgtype text,apply_id text,userid text,message_last_id text)",self.tableName];

// 從舊數(shù)據(jù)表把舊數(shù)據(jù)插入新的數(shù)據(jù)表中

// 刪除舊的數(shù)據(jù)表

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容