2012-07-10 53 views
0

在我的數據庫中,我有一個名爲Person的表,其中包含ID和名稱的行,這對於暫時的工作很好。稍後,在部署之後,我意識到我想要一個人也有一個地址(每個人一個地址)。做這個的最好方式是什麼?使用地址的新列更新表,或者爲地址創建新表地址並將兩個表與參考鏈接起來?或者,也許我應該有一個表Person,一個表Address和一個表PersonAddressRelation以及兩個鍵。更新域(DB)實體時添加列或創建新表?

我知道一些關於表格標準化的知識。我的問題是:如果你預測他們可能會改變,如何建立一個表格?

回答

2

總是在每個表中使用主自動遞增鍵;並確保從一開始就擁有最佳的db結構;爲什麼?因爲一旦你開始琢磨信息,分貝表會增加,你不知道他們會得到多大;如果讓我們說每張桌上有1000萬個信息,那麼你需要添加一個新字段,這沒關係,這需要一些時間......但是如果你嘗試了1億美元......你完成了......遊戲結束了......所以,從一開始就盡力而爲,並始終以唯一的身份識別每個信息

1

我建議額外的address表。通過這種方式,您可以將外鍵添加到person表中,也許有一天您需要擁有多個地址的人員。