SQL DB をコア データにダウンロードするために考えなければならないことを教えてください。どのフレームワークを使用する必要があるか、または SQL DB をフォーマットするときに特定の要件があるかどうかはわかりません。
ヘルプ、提案、チュートリアルへのリンクは大歓迎です。探しているものが正しいかどうかわからないため、いくつかの検索を行いましたが、物事を理解するのが難しいだけです。
あなたが求めていることを理解しているかどうかはわかりませんが、おそらく2つのリンクが役立つでしょう:
多くの形式 (Excel、xml など) から Sqlite DB にデータをロードできるアプリケーションは Navicatです。これは、DB にデータを取得する簡単な方法です。David H が述べたように、 FMDB のようなSqliteラッパーを介して Core Data を使用せずにデータを操作できます。その後、SQL コマンドを使用してデータにアクセスできます。
nsscreencst.com ではまったく異なるチュートリアルが提供されています。Importing into Core Dataは、Web API から Core Data に JSON データをインポートする方法を示すチュートリアルです。これは、ユースケースに関連している可能性があります。残念ながら、そこにあるビデオの料金は月額 9 ドルですが、IMHO は素晴らしい仕事をしています。
(上記の会社とは一切関係ありません)
これは不可能です - Core Data はストレージに SQLite を使用できますが、インポート/エクスポートはありません。実際には 2 つのオプションがあります。
1) iOS アプリ内で Core Data を使用したいデータベースが 1 つある場合、SQL ストアと対話する非常に単純な Mac アプリを作成し、作成した Core Data スキーマを使用して Core Data に基本的に複製できます。 SQL データベースで。これの利点は、Mac アプリを使用したテストと開発がより簡単になることです。その後、最終的なコア データ リポジトリを iOS アプリで使用できます (コア データ スキーマを含めることにより)。
2) iOS アプリですべてのインポートを行います。これは開発に時間がかかる場合がありますが、SQL データベースを電話機に動的にダウンロードし、SQLite を使用して読み取ることができます。
データをインポートするには、SQLite データベースのすべてのレコードから NSManagedObjects オブジェクトを作成する必要があります。データベース モデルの複雑さによっては、これが非常に難しい場合があります。
JSON から NSManagedObjects を作成する方法について、Marcus Zarra による優れた紹介があります: https://stackoverflow.com/a/2363996/480069。これにより、開始方法についてのアイデアが得られるはずです。マーカスが言ったように、複雑な関係があるときにループにならないように、オブジェクト グラフの関係に注意してください。
NSManagedObjects をシリアライズする方法についての優れたチュートリアルもたくさんあるので、Google で試してみてください: NSManagedObject serialize
.