2011-06-14 65 views
1

如果我有四個表,每個表都有四列,它們使用'users'中的主鍵'id',它的類型爲int,並且表之間的關係只是一對一,它仍然是適當將表作爲唯一的外鍵與'id'分開,而不是一個有16列的表?SQL數據庫結構。正常化?

回答

5

我想問一下在這種情況下,JOIN會購買你的產品。無論您需要的是一張桌子,還是永遠是一對一關係的聲明都可能發生變化。如果是前者,我會反規範化。如果是後者,我會保留多桌設計。

+0

好,這很有道理。我想我會堅持某種形式的規範化,以防未來發生變化。感謝Duffymo。 – Lee 2011-06-14 00:56:11

+0

我想補充的另一件事是使用列的頻率! – mqpasta 2011-06-14 01:44:04

+0

您能否說明每個建議設計的哪個範式?我問的原因是,我認爲這與正常化沒有任何關係,但我準備好糾正;) – onedaywhen 2011-06-14 14:16:58

0

通常有使用非規範化數據庫模式(如性能或更好的概念化)的理由。然而,考慮到你提供的信息,聽起來你最好用一張桌子。有3個表格,1對1關聯,只有4列,每個似乎都有點奇怪。

+0

我明白了。那麼,這個數據庫是爲我正在開發的一個小型在線遊戲。每張表代表遊戲中的相關實體組。 – Lee 2011-06-14 01:02:17