私は Core Data と多対多の関係で作業しています。建物には複数の部門があり、部門は複数の建物にある可能性があります。以前にデータベースを扱っていたので、これを Core Data に実装する方法がわかりませんでしたが、Core Data Programming Guide でこれを見つけました。
データベース管理のバックグラウンドがあり、これが懸念される場合でも、心配する必要はありません。SQLite ストアを使用している場合、Core Data は自動的に中間結合テーブルを作成します。
ただし、実際にはデータの整合性はありません。いくつかの建物オブジェクトを挿入しようとしましたが、現時点では属性 (数値) が 1 つしかなく、部門オブジェクト (関係) を設定するたびに関連しています。これにより、データベースには同じ建物番号を持つ複数の建物オブジェクトが含まれ、すべてが異なる部門オブジェクトに関連付けられます。理想的には、建物番号ごとに 1 つのオブジェクトがあり、そこにあるさまざまな部門がすべて含まれています。
それで、私の質問は次のとおりです: Core Data は何らかの方法でデータの整合性を維持できますか、それとも挿入する前にその番号の建物オブジェクトが既に存在するかどうかを確認する必要がありますか? 手動で確認する必要がありそうですが、Core Data がこれをやってくれるといいですね。