캠퍼스와 테이블 뷰에 모든 건물이있는 응용 프로그램을 작성하고 있습니다. 건물을 클릭하면 위도, 위도, 건물 이름 및 건물의 이미지와 같은 정보가 검색됩니다.iPhone 응용 프로그램 용 데이터 저장소
제 질문은이 데이터를 저장하는 가장 좋은 방법이라고 생각합니까? 해야 sqlite3 데이터베이스 또는 어쩌면 코어 데이터를 사용합니까? Sqlite3은 지금 당장 기대하고 있습니다. 저는 SQL에 다소 익숙합니다. 모든 제안을 부탁드립니다.
캠퍼스와 테이블 뷰에 모든 건물이있는 응용 프로그램을 작성하고 있습니다. 건물을 클릭하면 위도, 위도, 건물 이름 및 건물의 이미지와 같은 정보가 검색됩니다.iPhone 응용 프로그램 용 데이터 저장소
제 질문은이 데이터를 저장하는 가장 좋은 방법이라고 생각합니까? 해야 sqlite3 데이터베이스 또는 어쩌면 코어 데이터를 사용합니까? Sqlite3은 지금 당장 기대하고 있습니다. 저는 SQL에 다소 익숙합니다. 모든 제안을 부탁드립니다.
CoreData는 SQlite를 사용합니다. 학습에 익숙하다면, 애플과 관련된 모든 것들 (아이폰, ipad, 아이팟 터치, MacOS X 모두 지원)이 있기 때문에 최선의 선택이 될 것입니다.
CoreData 사용 방법에 대한 책과 예제가 많이 있습니다. 또한 CoreData는 업데이트를 처리하여 데이터베이스를 효율적으로 처리 할 수 있습니다.
CoreData를 사용하려면 SQL 행을 작성할 필요가 없습니다. API에 의해 모두 완료되었습니다.
좋아, 그래서 코어 데이터를 사용하여 이렇게 좋은 방법을 알아 냈다. 엔티티와 그 속성으로 핵심 데이터 모델을 만들었습니다. 엔티티 및 그 속성은 테이블 및 해당 열에 해당합니다. 나는 그것을 실행하고 빈 sqlite 파일을 만들었습니다. 당신은이 파일을 찾을 수 있습니다 문서
/
/사용자/[이름]/라이브러리/응용 프로그램 지원/아이폰 시뮬레이터/5.0/응용 프로그램/[일부 긴 HEX 번호]를 여기에서 다음과 같이 입력하여 sqlite 파일과 내용을 열어 볼 수 있습니다.
> sqlite3 [name of file].sqlite > .schema
.schema는 테이블과 열을 표시합니다. 코어 데이터가 sqlite 데이터베이스를 만들면 Z [entity] 테이블과 Z [attribute] 테이블을 호출하고 entity는 엔티티 이름이고 attribute는 속성 이름입니다. 그래서 테이블과 모든 속성 앞에는 Z가 붙습니다.
나는 모든 정보를 모아서이 데이터베이스에 저장하는 스크립트를 작성했다.이 데이터베이스는 내가 발견 한 디렉토리에 다시 넣었다. 이것이 내가했던 것과 똑같은 문제를 겪고있는 누군가를 도울 수 있기를 바랍니다.
코어 데이터를 SQLite를 통해 사용하는 것이 좋습니다. 핵심 데이터를 사용하는 것이 훨씬 쉽습니다.
업데이트 : 데이터베이스를 초기화하고 초기화 후에 변경하지 말아야합니다.
제발하지 마세요. 기본 핵심 데이터 데이터베이스에 액세스하는 것은 훌륭한 생각입니다. Apple은 언제든지 실제 구현을 변경할 수 있으므로 앱이 실패합니다. 실제 Core Data 메소드를 사용하여 데이터를 생성하면됩니다. – sosborn
이것은 디버깅에 유용하며, 몇 가지 표준 데이터를 한 번 초기화 할 수는 있지만 사용하지 않아야합니다. –
필자의 경우, 각각 다른 속성을 가진 230 개의 건물 데이터를 포함하는 테이블을 초기화해야했습니다. 그 후 데이터베이스에는 아무 것도 변경되지 않으므로 문제가 될 수있는 방법을 알지 못합니다. Apple은 기본 데이터베이스에 직접 액세스하지 않고 Core Data를 사용하지 않고 엄청난 양의 데이터를 저장하는 프로세스를 자동화 할 것을 어떻게 기대합니까? – ericlvb
나는 그것을 더 강하게 넣었습니다. 비 Apple 플랫폼 * 또는 *에 대한 이식성에 대한 매우 구체적인 필요가 없다면, SQL을 배우고 싶다면 SQLite는 Core Data에 비해 시간 낭비입니다. – bbum
감사합니다. 더 자세히 살펴 보겠습니다. 나는 각 건물에 대한 모든 정보를 취하여 테이블에 배치하는 펄 스크립트를 작성할 수 있기 때문에 sqlite3에 기대고 있었다. CoreData를 사용하는 것이 쉬운 지 여부는 확실하지 않습니다. 나는 CoreData로 조금 어지럽 혔고 사용하기가 매우 쉽고 친숙합니다. – ericlvb
CoreData에 대한 가져 오기 루틴을 작성할 수 있지만 일반적으로 응용 프로그램 내에서 가져 오기 루틴을 수행해야합니다. 기본 CoreData의 SQlite 데이터베이스에 직접 액세스하는 것은 권장되지 않습니다. – tobyc