2011-09-24 2 views
0

코어 데이터에 대한 두 가지 질문 : 1. 코어 데이터를 사용할 때 저장된 실제 데이터 (db 테이블)를 볼 수 있습니까? 2. iPhone 시뮬레이터를 사용할 때 시뮬레이터를 재설정하여 코어 데이터 db를 삭제할 수 있습니다. 하지만 실제 장치를 사용할 때 코어 데이터 db를 어떻게 삭제할 수 있습니까?핵심 데이터 테이블을 보는 방법 및 실제 장치에서 데이터를 삭제하는 방법

+0

여기에 대한 귀하의 질문에 대한 부분 답변 : http://stackoverflow.com/questions/4023954/iphone-core-data-simulator http://stackoverflow.com/questions/2811207/how-to-view-existing- 데이터 인 코어 데이터 – Perception

답변

1

Mac에는 명령 줄 도구 sqlite3이 함께 제공됩니다. 이를 사용하여 핵심 데이터 데이터베이스에 대한 쿼리를 수행 할 수 있습니다. 라이센스 계약에있을 수있는 리버스 엔지니어링에 대한 규칙을 위반하는지 여부는 확실하지 않습니다.

개발 중에 응용 프로그램을 삭제하고 다시 설치하여 편리하게 데이터베이스를 삭제할 수 있습니다. 앱을 삭제하여 앱을 삭제하고 싶지 않다면 앱에 코드를 작성해야 삭제할 수 있습니다.

0

명령 줄 sqlite3 도구를 포함한 sqlite 도구를 사용하여 sqlite 저장소를 직접 볼 수 있습니다. 그러나 (1) 핵심 데이터는 사용자 정의 문서화되지 않은 스키마를 사용하므로 저장소를 보면별로 알려주지 않으며 (2) sqlite 저장소 파일 자체의 구조는 관리 대상 개체가 메모리에서 어떻게 작동하는지에 거의 관계가 없습니다. 핵심 데이터는 SQL 래퍼가 아닙니다. 관리 오브젝트를 SQL에 저장하기 위해 별도로 관리 오브젝트를 분리합니다. SQL은 선택 사항이며 Core Data는 SQL 없이는 정상적으로 작동합니다.

"코어 데이터 db를 삭제하려면"단순히 영구 저장소 파일을 삭제하면됩니다. persistentStoreCoordinator를 초기화하는 위치를 확인하십시오 (Xcode 템플릿에서는 앱 대리인에 있습니다). 영구 저장소의 URL이 나타납니다. 핵심 데이터 스택을 닫은 다음 NSFileManager를 사용하여 저장소 파일을 삭제하면됩니다. 그런 다음 코어 데이터 스택을 다시 시작하십시오.

관련 문제