大規模なデータベースを作成したい。この目的のためにコアデータを使用することを考えています.しかし、データを手動で一度だけ挿入したい. このデータは削除または編集されることはなく、読み取りのみが行われます。コア データを使用して、このような多数のオブジェクトをデータベースに追加するにはどうすればよいですか? コアデータにデータベースを作成し、一度だけ書き込む方法。
1 に答える
あなたの質問は非常に一般的ですが、私はあなたにいくつかのヒントを与えようとします.
私の経験に基づいて、それを達成するための最も簡単な方法は、次の 2 つの手順に従うことです。
1) 外部ファイルを XML、JSON、または plist 形式で作成し、それを解析して、事前に作成された Core Data ストアを作成するために使用できます。core-data-tutorial-how-to-preloadimport-existing-data-updatedでいくつかの情報を見つけることができます。具体的には、ダミー プロジェクトをセットアップ (または単にAppDelegate
メソッドを使用) し、それを使用して MyDataStore.sqlite などのストアを作成できます。
2) 作成したら、以前に使用したルーチンを忘れて、アプリのアプリケーションのバンドルでストアを出荷します。ストアは読み取り専用です。それ以外の場合、それを変更する必要がある場合、それを行うことは許可されていないため、ドキュメント ディレクトリなどに移動する必要があります。
次の SO トピックで追加情報を見つけることができます。
事前入力された Core Data データベースを使用してアプリを出荷するにはどうすればよいですか?
App Bundle に含まれる Core Data Store
PS 本番環境でストアに同じ変更を加える必要がある場合は、アプリを再公開する必要があります (ストアがメイン バンドル内にあるため)。これを回避するには、ストアを別のディレクトリに移動して、たとえば一種の同期メカニズムをセットアップする必要があります。
それが役立つことを願っています。