2011-11-25 3 views
1

인앱 SQL 마이그레이션에 가장 좋은 방법은 무엇입니까? 내가 iPhone 개발을 처음 접했을 때 Sqlite를 사용하여 내 앱을 만들었습니다. 문제를 도와주십시오Sqlite 데이터 마이그레이션

+0

정확하게 데이터베이스를 마이그레이션하려는 위치를 알려주시겠습니까? –

+0

앱 스토어에서 내 앱 버전을 업데이트하고 싶습니다. 새 버전에 새 테이블을 추가 할 수 있으므로 사용자 데이터를 이전해야합니다. –

+0

이전 버전의 앱에서 이전 테이블을 삭제 하시겠습니까? 아니면 단순히 앱을 이미 사용하고있는 사용자, 새 버전을 다운로드 할 때 데이터가 새로운 앱과 함께 제공되기를 원하십니까? – Ravin

답변

3

데이터베이스 업그레이드 절차를 만들고 응용 프로그램이 시작될 때 처음 실행하게하십시오.

이렇게하면 응용 프로그램을 처음으로로드 할 때 create 문을 통해 새 테이블이 만들어집니다.

또한 현재 데이터베이스에있는 모든 데이터를 저장하는 데 도움이됩니다. 기존 데이터베이스를 어디서나 마이그레이션 할 추가 요구 사항이 없기 때문에 이것이 가장 권장되는 방법입니다.

또한이 링크에 내 대답을 참조하십시오 : 이것은 당신을 도와줍니다

Don't wan't to replacing the old database when app is updated

희망을.

도움이 더 필요하시면 언제든지 저에게 연락하십시오.

편집 :

당신은 다음과 같이 몇 가지 단계를 수행 할 필요가 다음 몇 가지 데이터를 포함하는 종료 테이블을 변경해야 할 경우 :

1) 기존 테이블의 이름을 바꿉니다을

말 TABLENAME은 'TestTable'이었다, 그래서에 테이블 이름을 바꿉니다 'TestTableOld'

2) 당신이 원하는 새 열 및 기타 언쟁의 m을 가지고 'TestTable'라는 새 테이블을 만듭니다 아데. (TestTable에 'COL1'삽입

COL2 '...'coln ') 값을 선택 COL1, COL2, COL3를 :

3)과 같은 쿼리'TestTable '에서'TestTableOld '에서 데이터를 복사 ... '콜린'TestTableOld에서;

4) 테이블을 삭제 'TestTableOld'

이는 ALTER 문으로 일 것이며, 또한 원래 테이블에서 모든 데이터를 보존하는 것처럼 위의 네 단계의 절차를 따르십시오.

희망을 얻으실 수 있습니다.

+0

선생님, 저는이 분야에서 아주 새롭기 때문에 그렇게하기위한 작업 예제가 있습니까? –

+0

아니요이 작업 예제가 있지만 여러 곳을 구현했습니다.데이터베이스에서 SELECT 문을 실행하는 것과 같은 방식으로 테이블 작성 명령문 및 갱신 명령문 및 삽입 명령문과 같은 다른 명령문을 프로그래밍 방식으로 실행하면됩니다. –

+0

예 귀하의 링크가 도움이 되었습니까? 예를위한 링크가 있습니까? –

관련 문제