https://philosopher-chan.tistory.com/1619
위에서 간단하게 만들어본 앱을 이용해서 Table과 Column 을 추가하면 어떻게 되는지 한번 해보겠습니다.
TextEntity2와 TextDao2 를 만들고 TextDatabase에서 만든 것들을 추가해서 한번 시도해보겠습니다.
아래와 같이 코드를 추가/변경해줬습니다.
위와 같이 데이터 스키마를 변경하고 나면
java.lang.IllegalStateException: Room cannot verify the data integrity. Looks like you've changed schema but forgot to update the version number. You can simply fix this by increasing the version number
와 같은 에러가 나옵니다.
위의 설명처럼 fallbackToDestructiveMigration을 이용해서 기존 데이터를 삭제해주고 스키마를 변경해줄 수 있습니다.
다만 이렇게 할 경우, 데이터가 날라가는 문제가 발생합니다.
기존 데이터를 유지하는 마이그레이션에 대해서 알아보겠습니다.
'Android Jetpack' 카테고리의 다른 글
Room 의 다양한 테크닉들 - 4 (AutoMigration) (0) | 2023.02.05 |
---|---|
Room 의 다양한 테크닉들 - 3 (addMigrations) (0) | 2023.02.04 |
Room 의 다양한 테크닉들 - 1 (Simple Ex) (0) | 2023.02.04 |
Room Advanced - 6 (Update / Delete) (0) | 2023.02.02 |
Room Advanced - 5 (Adapter) (0) | 2023.02.02 |