菜鸟教程小白 发表于 2022-12-12 11:49:32

iphone - 核心数据关系


                                            <p><p>在我的应用程序中有 N 个<strong>用户</strong>。每个用户可以有 N 个<strong>类别</strong>。每个类别可以有 N 个<strong>书籍</strong>。</p>

<p>我创建了以下实体<strong>图书元数据、用户、类别</strong></p>

<p>BookMetadata 实体是来自不同用户的书籍数据的唯一集合。 <img src="/image/vcEwt.png" alt=""/> </p>

<p>如何在这些实体之间建立关系。</p>

<p> - 用户和类别之间的关系。(<strong>一对多</strong>)<strong>或</strong>用户和书籍(一对多,一个用户可以拥有一本或多本书籍)。 </p>

<p>类别和书籍之间的关系。(<strong>一对多</strong>)。</p>

<p> <img src="/image/j4afB.png" alt="enter image description here"/> </p>

<p>我对实现这些关系的理解是否正确,我在 CoreData 中创建关系方面相对较新。 <em>如果没有或有更好的解决方案</em>,请告诉我该怎么做。</p>

<p>编辑:</p>

<p>考虑这种情况,</p>

<pre><code>User 1 -&gt; Category 1 -&gt; Book1,Book2.
       -&gt; Category 2 -&gt; Book3, Book4.

User 2 -&gt; Category 1 -&gt; Book1,Book2,Book3.
       -&gt; Category 3 -&gt; Book4
</code></pre>

<p>Here 在上述场景中。同一本书(书 3)针对不同的用户具有不同的类别。
这种情况如何处理?</p>

<p>编辑 2:</p>

<p>我附上了一个示例 sqlite DB 文件@dropbox <a href="https://www.dropbox.com/s/nlmdojkk64bkf1b/test.sqlite" rel="noreferrer noopener nofollow">https://www.dropbox.com/s/nlmdojkk64bkf1b/test.sqlite</a> . </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>作为惯例,实体应命名为单数。相对于它们的关系,关系应命名为复数或单数。</p>

<p>根据给定的信息,假设类别是由用户创建的,用于对书籍进行分组,如播放列表或其他内容。类别对用户来说是唯一的,并且不会在用户之间共享。一本书可以包含在任意数量的类别中。 </p>

<p>所以这会变成</p>

<p>用户<-->>分类</p>

<p>类别 <-->> 书籍 </p>

<p>书籍< -->> 分类</p>

<p>关系应该有两个方面。 Inverse 让你定义它。如果一个用户可以有任意数量的类别,而一个类别只能有一个用户。与类别相反的是用户。</p>

<p> <img src="/image/iX4KW.png" alt="enter image description here"/> </p></p>
                                   
                                                <p style="font-size: 20px;">关于iphone - 核心数据关系,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/17147571/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/17147571/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iphone - 核心数据关系