考虑关于不同发布者的N& N数据库应用程序。出版商出版各种作者撰写的书籍。只有在与作者签订合同后才能出版这些书籍。作者可以与不同的出版商签订联系,出版商可以与不同的作者签订合同。出版商可以出版多本书籍,而没有两家出版商可以出版由同一作者撰写的同一本书。出版商和作者之间的每份合同都包含合同开始日期,结束日期和合同取消罚金。如果一个人至少写了一本书并且每本书都是由至少一位作者写的,那么他将被视为作者。 N& N保留出版商名称,地址和最多两个电话号码(个人,办公室)作为出版商的记录。对于作者,组织保留其识别号F_Name,L_Name,P_NO,DOB以计算年龄,主题区域,HNO,街道号码,邮政编码作为记录保存的地址。可能有不止一位作者在同一主题领域书写书籍,作者可能会撰写不同主题领域的书籍。该书由ISBN确定。它有标题,页数,出版年份和类别。可能有多本书属于同一类别,但一本书必须属于最多一个类别。
在这种情况下,是否会有一个单独的类别实体? 和 作者出版商和合同之间是否存在第三方关系?
答案 0 :(得分:1)
<强>分类强>
实体,关系,属性和关联实体之间的区别基本上是任意的。
唯一的类别关系是“B书......并且有C类”。一本书参加了0或1次。我们没有被告知是否存在没有书籍的类别,即类别是否必须参与。一个类别可以多次参与。
如果关系为0或1到1或更多,则所有类别都参与。因此,如果您想知道所有类别,那么它们就是关系中的类别。因此,类别可以是书籍的属性(或者是实体)。否则(关系是0或1到0或更多)我们需要知道不参与的类别。如果现有类别从未改变,则它们可以是1:1,具有域的值。因此,类别可以是书籍的属性(或可以是实体)。其他类别来来去去,所以他们需要成为实体。考虑到没有考虑类别是否出现或是否必须与书籍相关联,最简单的情况是类别域,因此类别属性/属性就足够了。
<强>作者-发布商合同强>
这三种实体类型有许多三元关系。你想知道的是是否应该有 base 。
我们知道“作者A与出版商P签订合同”。但目前尚不清楚作者和出版商是否可以签署更多合同。例如,目前尚不清楚每本书是否都有合同。
如果只能签订一份合同,则不需要基础关系“作者A和出版商P签署合同C”。否则(可能有多个合同)你需要一个三元关系。考虑到它没有进入,最简单的答案是不要有一个。
关于要求
仅仅知道绘制ERD的所有相关关系和事物是不够的。我们需要了解所有基本关系和当事物被视为实体时的完整基数。然后,根据限制,我们可以将实体降级为财产或关系。您应该要求填写要求。
答案 1 :(得分:0)
参考:本书由ISBN标识。它有标题,页数,出版年份和类别。 Ans:此行显示该类别是Book
的单值属性和
参考:可能有多本书属于同一类别,但一本书必须属于最多一个类别。
Ans:此行显示不同的图书可能具有相同的类别属性,但一本图书不能包含多个类别,且此属性必须为NOT-NULL
因此,类别将是书的属性。
参考:只有在与作者签订合同后才能出版书籍。
Ans:这一行显示应该存在三元关系。 出版商标志与作者或反之亦然。