나는 텍스트, 그림, 소리 등으로 스토리를 만들고 편집하기 위해 Android 스토리 텔링 앱을 작성 중입니다. 지금까지 이야기는 하나, 데이터베이스는 하나, 테이블 하나는 모두 정상적으로 작동합니다. 이제는 여러 이야기로 이동하여 이야기 당 하나의 표를 가진 단일 데이터베이스를 유지할지 또는 여러 데이터베이스를 보유할지 또는 데이터베이스 당 10 개의 표와 같이 두 개의 조합을 갖는지에 대해 생각하고 있습니다. 스토리지 서비스로 /로부터 스토리를 업로드/다운로드해야합니다.Android 앱에 여러 개의 테이블 또는 다중 dbs가 있습니까?
1
A
답변
3
확실하지 않지만 주요 문제는 기본 데이터베이스 구성표입니다. 한 이야기에 대해 만든 표를 별도의 표로 정규화 할 수 없다고 상상할 수 없습니다.
예를 들어 이야기 제목이 들어있는 이야기에 대한 표를 만듭니다. 텍스트와 사운드를위한 테이블과 필요한 모든 것보다. 이 테이블들 각각은 자신이 속한 이야기를 참조 할 수 있도록 외래 키를 가질 것입니다.
또한 스토리에 대한 별도의 데이터베이스 또는 테이블에 대한 생각의 문제를 해결해야합니다.
각 스토리에 대해 단일 데이터베이스를 사용하기로 결정할 때 모든 데이터베이스에서 데이터베이스 스키마 변경 사항을 처리해야한다는 점도 기억하십시오. 테이블에 하나의 열을 추가했기 때문에 10 개의 다른 데이터베이스를 업데이트해야 할 때 엉망이 될 수 있습니다.
0
다른 데이터베이스로 구분합니다. 나는 개발이 훨씬 쉬워 질 것이라고 생각한다. 예를 들어 onUpdate() 함수의 버전은 database-scheme의 각 변경 사항에 따라 증가해야합니다. 하나의 큰 데이터베이스가 있다면 버전이 빠르게 증가 할 것입니다.
- 당신이 SQLiteOpenHelper() 각 데이터베이스에 대한 기능 (분할 과 정복을) 확장 할 수있는, 논리 파일에 코드를 분리하기 쉬울 것입니다.
- 게임을 전환 할 때 간단히 데이터베이스 을 닫을 수 있습니다. 그리고 다른 데이터베이스를 엽니 다.
- 하나 데이터베이스에 큰 변화가있는 경우는, 모든 것을 코딩의 서버에서 대신 에게 데이터베이스를 다운로드 당신이 별도의 데이터베이스가있는 경우 대역폭을 절약 할 수도 있습니다.
- 런타임 중에 데이터베이스를 다운로드하려는 경우 모든 데이터베이스에는 다운로드 할 정보가 필요하며 SQLiteOpenHelper가 필요합니다.
- 데이터베이스의 크기에 따라 (게임의 양) 데이터베이스에서 더 빨리 검색 할 수 있습니다.
하지만 저는 전문가가 아닙니다.이 디자인 결정에 반대하는 좋은 이유가있을 수 있습니다.
관련 문제
- 1. 다중 테이블 또는 다중 스키마
- 2. 1000 개의 테이블 또는 mysql의 여러 인스턴스?
- 3. 하나의 앱에 여러 개의 앱을 번들로 제공합니다.
- 4. 하나의 앱에 여러 개의 분할보기가 있습니다.
- 5. 여러 개의 임시 테이블?
- 6. 하나의 큰 SQL 테이블 또는 여러 개의 작은 SQL 테이블?
- 7. 큰 테이블 또는 여러 개의 개별 테이블? (데이터베이스 디자인 질문)
- 8. Postgres : 여러 개의 열이있는 테이블 또는 더 적은 수의 열이있는 여러 개의 테이블?
- 9. 하나의 iOS 앱에 여러 개의 Localizable.strings 파일
- 10. 왜이 테이블 관계로 "여러 개의 계단식 경로"를 얻고 있습니까?
- 11. 새 페이지가있는 여러 개의 테이블
- 12. 데이터베이스 : 여러 테이블 또는 하나의 테이블?
- 13. 앱에 여러 개의보기 추가하기
- 14. 여러 개의 마우스 포인터가 있습니까?
- 15. Android : 앱에 하나의 Context 객체 만 있습니까?
- 16. 스레드 또는 여러 프로세스가 있습니까?
- 17. 여러 개의 CheckBox가있는 Android ExpandableListView
- 18. iPhone - 하나의 앱에 여러 앱 패키징
- 19. Android 앱에 MIDI 사운드를 생성하는 방법이 있습니까?
- 20. 여러 개의 ArrayLists/linkedHashmaps가있는 JSP 테이블
- 21. CSS 여러 개의 다중 열 div
- 22. 테이블 하나 또는 여러 개?
- 23. Mac - 여러 개의 창 또는 여러 개의보기?
- 24. SQLite에서 여러 개의 관련 테이블 업데이트
- 25. MySQL 다중 테이블 및 다중 행
- 26. Android 앱에 LiveStream 통합
- 27. Android 앱에 딥 링크
- 28. android) 내 앱에
- 29. iPhone에서 여러 개의 sqlite 테이블 참조?
- 30. MVC에서 1 모델 1 테이블 또는 1 모델 여러 테이블?
Thanks Warren and Darokthar. 이 순간 나는 쉽게 가져 오기/내보내기를 위해 하나의 테이블에있는 이야기에 대한 모든 데이터와 함께 Warren의 제안 (동일한 DB의 개별 테이블)을 따르기를 원합니다. –