我有一個問題。基本上我模擬了一個充滿作者信息的發佈者數據庫。所以爲此,我有一個名爲'作者'的實體 - 作者有一個自動增量計數器的主鍵,以及'姓名'和出生年份。ER模型中的關係混淆
除此之外,我還有一個'book'實體,它有一個名稱,發佈年份,它是自己識別的主鍵,它是一個自動遞增計數器。它還有兩個外鍵 - 一個引用主要作者的字段(這是必需的),以及一個指定第二作者的可選字段。
我的問題是,作者和書之間的關係顯然是'一個'到'零或多個'。然而,我陷入困境的是第二作者的「選擇性」。我認爲它應該是一個'零或一'到'零或多'的關係,但我不確定我是否正確翻譯邏輯 - 我的想法是有可能很多書不會有第二作者。
同樣,當在sqlite3中實現這個功能時,最好是使該字段爲'required'還是'optional'?我假設我是否要求它可以保持休眠狀態作爲'NULL'值,除非需要。
任何幫助,您可以提供將不勝感激。
謝謝!如果我改變了我的關係,那麼,如果我沒有「第二作者」 - 我有一個自己是作者的「編輯者」(但也是可選的)。這是否對應於'零或一個'到'零或多個'關係? – user1798522
這取決於。我想一本書可以有多個編輯器。因此,你會得到一個稱爲編輯器的額外表格。或者,您可以將作者表更改爲books_people表並添加一個「角色」字段。 – Wilco