【发布时间】:2016-07-17 09:31:50
【问题描述】:
我有一个名为Book 的表和一个名为Author 的表。为了将作者与书籍联系起来,我创建了另一个名为 AuthorOfBook 的表,其中 Priority 是整数值,有助于让每本书的作者按正确的顺序(1、2、3...)。
这是一个好的解决方案吗?首先,我认为存储比整个字符串更多的数字将有助于节省空间,但后来我在书的封面图像中添加了二进制字段,所以现在没关系了。我应该删除AuthorOfBook 表并将外键BookId 添加到Author 表吗?如果我这样做,我的查询看起来会更简单,我不需要那么多表,但管理作者会更难。
那我的Priority 专栏呢?有什么编码标准吗?
【问题讨论】:
-
第一种方案是正确的。坚持下去。
-
只有在您确定该书只能有一位作者的情况下才能使用第二种解决方案。但是将作者的 FK 添加到 Book 表中
-
AuthorOfBook 表增加了您对案例“一本书可以由多个作者撰写”的设计支持。如果你放弃它,你将失去多对多的关系。
标签: database coding-style standards