0

Account と House という 2 つの Core Data エンティティがあります。各アカウントには家のリストを含めることができ、家は 1 つのアカウントにのみ含めることができるため、これは逆の通常の 1 対多の関係です。

アカウントには、多くの可能性のある家のどれがプライマリであるか、または何もない場合は nil であることを示す「プライマリ」プロパティもあります。プライマリ プロパティの ID は変更される可能性があり、もちろん、それぞれが独自の住宅コレクションを持つ多くのアカウントが存在する可能性があります。

これを逆の 1 対 1 の関係としてモデル化する必要がありますか? それなし?

それとも、区画番号など、家に関する一意の情報を格納する属性を使用してモデル化し、それを House エンティティに追加する必要がありますか?

どちらの方法にも長所と短所はありますか? また、他に検討すべき方法はありますか?

4

1 に答える 1

1

私はそれを逆数との1対1の関係としてモデル化します。あなたは逆なしで逃げることができましたが。

常に逆数を使用することをお勧めします(したがって、データモデルに逆数がない場合はXcodeコンパイラが警告します)。私が逆を持たないと考えることができる唯一の理由はスペースです。アカウントごとに膨大な数の家がある場合、データベースのスペースを節約して、関係を一方向(アカウントからプライマリハウスのみ)にすることができます。

各エンティティで属性を使用する代わりに、データベース内で同じ量のスペースを使用するため、あまり役に立ちません。この関係を使用すると、属性を介して管理対象オブジェクトを見つける方法だけでなく、管理対象オブジェクト間にポインターが作成されます。

于 2009-11-04T03:58:33.230 に答える