我的数据库中有三个表: Book、Series、Author。
这些都是彼此之间的多对多关系。
Book - Series: many-to-many
Book - Author: many-to-many
Author - Series: many-to-many因此,这意味着我将不得不在我的数据库中添加另外三个表:
1. tableBookSeries, which will have id, idBook, idSeries
2. tableBookAuthor, which will have id, idBook, idAuthor
3. tableAuthorSeries, which will have id, idAuthor, idSeries这意味着我的数据库中将有6个表。
有没有办法优化这个数据库,或者现在是不是很好?我可以缩短桌子的数量吗?这对我有什么好处吗?
发布于 2013-03-22 19:15:51
在我看来,作者系列中没有直接的关系。作者只写书,这些书碰巧是系列的一部分或不是。
在数据库中应该是这样的(使用5个表而不是6个表):
额外表:
避免在Author和Series之间建立联系。如果你需要知道哪个系列与作者有关,你仍然可以通过搜索他的书来知道。同样,要知道谁写了一个系列,您可以使用相关Books获取作者列表。
希望我能帮上忙
https://stackoverflow.com/questions/15568631
复制相似问题