我正在建立一个图书馆数据库,我陷入了一件特殊的事情。
我有三张桌子:BookCopy
,BookLoan
和Members
。我不清楚如何建立它们之间的关系,所以一个成员可以借一本书(或多本书),所有这些都可以正确地反映在我的数据库中。
我的想法是有两个多对多的表,所以我添加了BoakLoansMembers
和BookCopiesBookLoans
。我不确定这是否正确,即使是,我也不知道怎么剪这么多桌子。
所以,现在我想知道,在这种情况下,什么是最好的做法,为什么?
最佳答案
您可以在成员和bookcopy之间建立m:m关系,并使用bookloan表作为交叉联接表。所以基本上只需将来自表成员和bookcopy的引用添加到表bookloan
BookLoan
---------------
idBookLoan
dateLoaned
dateReturned
idBookCopy FK -- add these two
idMember FK
还可以考虑将idbookcopy、idmember和dateloaned作为bookloan表的主键