2016-10-10 4 views
0

나는 단어 데이터베이스를 사용하는 전화 응용 프로그램을 사용하여 사용자가 알고있는 단어를 확인합니다. 나는 콘솔 응용 프로그램을 사용하여 채우는 단어로 SQLite 데이터베이스를 가지고 있으며, 다음은 휴대폰 등의 리소스로 배포됩니다.응용 프로그램에서 데이터베이스를 업데이트하는 동시에 사용자 점수와 설정을 유지하는 방법은 무엇입니까?

사용자가 응용 프로그램을 실행하면 사용자가 응용 프로그램을 실행하면 통과 오류 데이터가 다른 데이터베이스에 저장되지만 테이블.

응용 프로그램을 업데이트하면 단어 데이터베이스의 최신 복사본이 전화기에 설치되고 모든 사용자 데이터가 손실됩니다.

일반적으로 어떻게 처리됩니까? SQLite를 사용하는 전화 응용 프로그램에는 사용자 데이터를 저장하는 데 사용되는 데이터베이스와 응용 프로그램을 처음 설치하거나 업데이트 할 때 가져올 수있는 다른 보유 데이터가있는 여러 데이터베이스가 있습니까?

여러 데이터베이스를 사용하는 경우 한 데이터베이스에서 다른 데이터베이스로 조회를 만들 수 있습니까?

올바른 방향으로 나를 안내 해주는 도움, 조언 또는 링크에 미리 감사드립니다.

+0

일반적으로 스키마를 업데이트 할 때 데이터베이스 마이그레이션을 수행합니다. – Egor

+0

@ Egor - 당신이 의미하는 바를 조금 더 설명 할 수 있습니까? 내가 가진 가장 큰 문제는 클라이언트에 추가해야하는 수백 개의 항목이 추가 된 업데이트 된 테이블을 얻고있는 것입니다. –

+0

죄송합니다. 귀하의 질문에 대한 답변을 얻지 못했습니다. 나는 당신이 하나의 데이터베이스로 잘 할 수 있다고 생각하지만, 2 개의 데이터베이스로 유스 케이스를 구현하는 것은 문제가되지 않아야한다. 두 개의 'SQLiteOpenHelper' 클래스 만 있으면 서로간에 데이터를 쿼리 할 수있다. – Egor

답변

1

파일 (JSON 또는 일반 텍스트)을 사용하여 앱과 함께 단어를 제공합니다. 그런 다음 앱이 실행되면 해당 파일을 읽고 새 단어를 데이터베이스에 추가합니다. 다른 테이블에는 영향을주지 않습니다.

0

대신에이를 처리해야하는 대신 값을 코드에서 정적 메서드로 하드 ​​코딩합니다. 그런 다음 런타임에 테이블에 데이터가 있는지 확인한 후 그렇지 않은 경우 하드 코딩 된 데이터를 가져와 삽입합니다.

귀하의 경우에는 버전 번호가 낮거나 테이블이 비어 있다면 모두 삭제 한 다음 새 정적 데이터를 삽입하기 만하면됩니다.

관련 문제