0

コア データにデータベース スキーマをインポートしたいのですが、私はビュー ベースのアプリケーションであり、コア データは手動で追加されています。

新しいデータ モデルを作成しました。.sql ファイルで取得したデータベース スキーマをインポートしたいのですが、そのスキーマをインポートすることは可能ですか、それともすべてのテーブルを手動で作成する必要がありますか?

4

1 に答える 1

0

Core Data は、データベース自体ではなく、オブジェクト グラフの永続化フレームワークであることに注意してください。微妙な違いかもしれませんが、あなたが提案していることのようなことをしようと考えるとき、それは重要な違いです。

Core Data は sqlite ストアによってバックアップできますが、ほとんどの場合、実装の詳細は不透明です。sqlいずれにしても、Core Data モデルにバックポートすることはできません。

Core Data が適切なフレームワークであるかどうかを判断することをお勧めします。その場合、モデル ビルダー ツールでエンティティとリレーションシップを作成する、データベース スキーマを維持したい場合は、それを使用する必要があります。 Gus Mueller のFMDBなど、生の sqlite の Cocoa ラッパーを見る

Core Data Programming Guideをご覧ください。FAQ の中には、次の Q/A があります。

Core Data で既存の SQLite データベースを使用するにはどうすればよいですか?

あなたはそうしない。Core Data は永続ストア タイプの 1 つとして SQLite をサポートしていますが、データベース形式は非公開です。ネイティブ SQLite API を使用して SQLite データベースを作成し、Core Data で直接使用することはできません (ネイティブ SQLite API を使用して既存の Core Data SQLite ストアを操作することもできません)。既存の SQLite データベースがある場合は、それを Core Data ストアにインポートする必要があります (「効率的なデータのインポート」を参照)。

于 2012-10-08T17:23:55.233 に答える