04 CoreData輕量級版本的遷移

2021-09-06 20:24:27 字數 742 閱讀 6910

一 輕量級的資料遷移

例如新增新的實體,新的實體屬性。

輕量級版本遷移方案非常簡單,大多數遷移工作都是由系統完成的,只需要告訴系統遷移方式即可。在持久化儲存協調器(psc)初始化對應的持久化儲存(nspersistentstore)物件時,設定options引數即可,引數是乙個字典。psc會根據傳入的字典,自動推斷版本遷移的過程。

1 新建乙個版本的資料庫模型

選中需要做遷移的模型檔案 --> editor --> add model version

2 在右邊欄 設定當前的coredata 資料模型為新建的那個資料模型

3 修改新的資料模型 增加字段 增加實體 修改屬性名 實體名 均可

增加字段 增加實體直接增加即可,如果是修改實體的名字,則需要按照如下的設定

並且在**中嗎,使用舊實體的時候換成新的實體

4 刪除舊的實體類,重新生成新的實體類

5 設定options引數即可,開啟資料庫公升級遷移的開關

nsmigratepersistentstoresautomaticallyoption設定為yescoredata會試著把低版本的持久化儲存區遷移到最新版本的模型檔案。

// 輕量級資料庫遷移的時候設定對應的引數
列印除錯引數:

Core Data 輕量級遷移

如果只是簡單的改變模型,比如給乙個實體新增乙個新屬性,core data 可以自動進行資料遷移,也就是指輕量級遷移。輕量級遷移基本上和普通遷移是一樣的,不過不需要提供對映模型,在對映概況中有介紹 core data自行推斷新模型和目標模型的差異。輕量級遷移在應用開發的早期階段使用非常方便,當你頻繁的...

coredata 輕量級 遷移(4 2以上)

當coredata中的entity,property或者relationship發生改變以後,預設情況下面,在嘗試呼叫coredata的時候,程式會異常退出。怎樣開啟自動遷移的功能?分三步 nspersistentstorecoordinator persistentstorecoordinator...

輕量級重量級

輕量級重量級某種程度上是以啟動程式需要的資源來決定。比如,ejb啟動的時候,需要消耗大量的資源,記憶體,cpu等,所以是重量級。而spring則不,所以是輕量級框架。量級主要是看對容器的依賴性所決定的,依賴性越小,越輕量.ejb往往內部做了很多服務,網上的說法是買一得三 而且你不想要就不行!比方說我...