2012-06-04 249 views
3

我想知道什麼是組織用戶數據的最佳實踐。用戶表數據庫最佳實踐

我是否應該將每行的所有用戶數據存儲在一個表中,還是應該將其分割爲更小的塊並使用主鍵相關的多個表?

例如。

要開始我想要記錄個人信息,如姓名,職業,位置等。 最終它會很高興有添加使用歷史的選項。如他們填寫了多少調查表,以及他們評論了哪些文章。

雖然打字是有道理的我有一個表,徵求意見的用戶名+密碼錶,對個人信息的表格,並隨時添加表作爲我的需求的增長......

想確認一些雖然。

回答

8

如果要建立一對多的關係,那麼你應該把它分開,但對於一對一的事情你不應該這樣做。因此,如果用戶要擁有多個地址,電話號碼,歷史記錄,朋友等,那麼您將擁有與客戶ID相關的地址表(或電話號碼,歷史記錄或朋友表)。

對於用戶名和密碼,您不需要單獨的表格。

+0

很有意義。謝謝 – chris

1

最好的做法是優化數據庫,或者你真的想先整理用戶數據你有一個去很多關係,因爲你可以很容易地在不同的表連接的這樣

幫助跟蹤整個用戶數據
SELECT * FROM user_A a INNER JOIN userdata_B b ON a.id=b.a_id 

如果用戶包含名稱爲name2,occup1,occup2,location1,location2等多個記錄,所以您必須創建多個表並將此記錄填充到這些表中,因爲如果將整個用戶數據填充到單個表中,很多執行時間

此後應用索引.......

+0

感謝您的答覆。索引是我不得不看一看:) – chris