2013-05-12 72 views
0

我有一個應用程序,利用核心數據。核心數據實體之一是代表枚舉的NSInteger。在我的下一個版本中,枚舉值已經改變,我需要將舊枚舉重新映射到新枚舉。在這種情況下,CoreData遷移是否正確?

在這種情況下,核心數據遷移是一種合適的方法,因爲模型沒有改變,只是我對數據的解釋。我試圖實施遷移政策,但我無法實現它(我的遷移政策從未執行)。

謝謝!

--John

回答

0

如果你已經添加了幾個新的價值觀,以枚舉的結束,那麼我也不會遷移任何事情,只要確保舊號碼仍然等於舊值。

如果您更改了每個枚舉所代表的值,那麼您不應該首先使用枚舉,因爲枚舉永遠不會改變。在這種情況下,我會添加一個新的列或關係,可能最好不要使用枚舉這次。

讓數據庫結構中的舊枚舉保留,但讓NSManagedObject的子類在兩者中的任何一個發生更改(或類似的情況)時更新兩個值。