하루를살자

[iOS] CoreData 를 배워보자 - 4 [LightWeight Migration] 본문

iOS

[iOS] CoreData 를 배워보자 - 4 [LightWeight Migration]

Kai1996 2022. 10. 18. 15:42

목차 

- PersistentStore Coordinator 에 Migration 옵션주는 방법 

- PersistentContainer 의 Default PersistentStore Coordinator 옵션 확인 하기

 

PersistentStore Coordinator 에 Migration 옵션주는 방법 

Entity 의 속성을 변경하면 이미 Persistent store 에 저장되어있던 데이터와 더이상 매칭이 되지 않기 때문에 아래와 같은 에러를 발생시킵니다.

 

Light Weight Migration 은 Entity 안에서의 가벼운 변경 (속성 추가/변경, 관계도 수정) 등 이 일어났을때PersistentStoreCoordinator 가 자동으로 이를 관리해주는 것을 의미합니다.

 

이는 아래와같이 PersistentStoreCoordinator 를 정의해줄때 persistent store 의 Migration 옵션을 설정해 주어야합니다. 

Migration Option 설정 전
Migration Option 설정 이후

*더 자세한 Migration 옵션은 여기를 참조해주세요.

 


PersistentContainer 의 Default PersistentStore Coordinator 옵션 확인 하기

 

NSPersistentContainer 를 사용할경우 자동으로생성된 DefaultPersistentStore Coordinator 를 사용하게 됩니다. 

 

여기서는 고맙게도 사용자가 Entity 를 업데이트 하고나서 이런 에러를 겪지 않도록 설정이 미리되어 있는것을 확인할수 있습니다.

 

 

Comments