簡體   English   中英

一對一的關系或使用相同的表?

[英]One-to-One Relation or Use the Same Table?

我創建了以下表格:

動漫(id,標題,日期),漫畫(id,標題,日期),TVSeries(id,title,season,episode,date)

他們中的一些人已經擁有導演,流派,文章等的外鍵(一對多或多對多的關系)。

現在我想再創建兩個表評論(id,評級,日期)和帖子(id,thumbid,articleid,reviewid)。 評論是關於一個動漫和/或漫畫TVSerie,反之亦然,但評論的屬性可能在多個表中。 關於帖子也一樣。

這是單獨表中一對一關系的典型示例,還是更有效地向現有表添加更多屬性? 所以更多的表和關系或更少的表更多列?

謝謝你,我希望我的問題不是那么愚蠢,但我有點困惑。

在我看來,最好避免一對一關系的外鍵關系。 它最適合一對多關系。

我不確定你的要求是什么,但選擇如下:

  1. 評論有2列,可以是適用表的外鍵,也可以是NULL。 當單個評論可以同時進行時,這是真的。

  2. 有一個ReviewsComics和ReviewsAnime表。 然后,您將擁有每個表中的評論的所有字段(並且沒有評論表)。

  3. 另一種選擇(2)是將它們與評論表一起使用,那么這兩個表只有2個字段,分別是評論和漫畫/動漫的外鍵(因此評論和漫畫/動畫之間沒有直接鏈接)。

  4. 有一個基本表,動漫和漫畫鏈接到1對1,並有評論鏈接到該表。

  5. (編輯)如果Anime / Comics的所有字段都相同(或相似),您可以將它們合並到一個表中並添加一個類型字段,表示Anime / Comics,然后問題就消失了。 這類似於基表選項。

編輯:2評論表可能會提供最佳表現(除非您想要選擇所有評論,經常),但如果有適當的指數,表現不應該與上述任何一個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM