2014-06-24 2 views
0

몇 주 동안 장치에서 앱을 실행 한 후에도 원격 데이터베이스에 테이블을 추가 할 수 있는지 알고 싶습니다. 그래도 작동합니까?설치 후 모바일 DB를 수정할 수 있습니까?

예를 들어 Android 기기를 사용하고 있고 SQLite db를 사용하는 3 단계의 간단한 게임이있는 경우 이제 다른 레벨에서 진도를 잃지 않고 DB 변경 사항을 수용하도록 앱을 다시 설치하지 않고도 게임에 4 레벨을 추가하고 싶습니다.

답변

1

간단히 말해 YES이 가능합니다. 모든 데이터 손실없이 데이터베이스 설계를 변경할 수 있습니다. SQLiteOpenHelper을 확장하는 데이터베이스 클래스의 'onUpgrade'메소드를 재정 의하여 구현할 수 있습니다.

앱을 업데이트 할 때 데이터베이스 버전 번호를 변경해야합니다. 데이터베이스 버전 번호가 이전 버전보다 큰 경우 onUpgrade 메서드가 호출됩니다.

@Override 
public void onUpgrade(SQLiteDatabase db, int newVersionNumber, int oldVersionNumber) { 
     // Do your Changes here. You can Alter table, Drop column etc 
} 

원격 데이터베이스 - 앱과 연결되어 있지 않습니다. 그래서 당신은 당신이 원하는 것을 바꿀 수 있습니다. 앱에 영향을 미치지 않습니다. 하지만 효율적으로 처리해야합니다.

희망이 있습니다.

+0

가 Ohke이가 많은 도움이, 감사합니다. 동일한 로컬 DB에 적용됩니까? 즉, 데이터를 잃지 않거나 다시 설치하지 않고도 모바일 장치의 DB를 변경할 수 있습니까? –

+0

네, 내가 설명한 부분은 로컬 DB 용입니다. – GoCrazy

+0

내 잘못, 정말 고마워! –

0

예. 가능하면 업그레이드 할 수 있습니다.

이전 및 새 데이터베이스 버전을 설정해야합니다.

공공 무효 onUpgrade (의 SQLiteDatabase dB, INT newVersionNumber, INT oldVersionNumber)

관련 문제