2012-01-03 47 views
0

我設計爲我們的客戶關係管理系統的數據庫,需要一些幫助與CRM用戶表。數據庫設計的CRM用戶表爲特定方案

用戶類型:

  1. 聯繫
  2. 銷售代表從分公司2
  3. 銷售代表從分公司3
  4. 客戶端登錄

現在對於這種情況下它纔有意義讓所有用戶都在一個表中,並有一個名爲「type」的表屬性來標識用戶的類型?或者我應該爲每種類型的用戶提供一個單獨的表格?此外,銷售代表之間還會有一些信息共享。

+0

你能提供更多的信息嗎?目前,這個問題非常模糊。 – 2012-01-03 17:09:10

回答

1

通常情況下,我通常會用一個User表與它相關的Type。如果您有其他銷售代表屬性需要存儲,請創建一個帶有外鍵的SalesRep表,並將其返回到User表。然後,創建連接UserSalesRep視圖,所以看起來,在邏輯上,像有隻是一個usvSalesRep表擁有所有你需要爲銷售代表的屬性。

但是,這取決於數據量和交易上很多加載,所以你可以在那裏提供額外的信息是有用的。

+1

每天只有不到100個用戶和少於1000個交易。 SalesRep將具有一些額外的屬性,例如他們當年關閉的銷售數量,出價的數量以及一些性能屬性。 – wackytacky99 2012-01-03 17:23:29

+0

@ mvador99 - 單桌可以,你需要沒有問題,有什麼呢:)對於那些表 – Eric 2012-01-03 17:25:47

+0

外鍵或反之亦然:) – 2012-01-03 17:25:53

1

這取決於您期望的用戶數量。

但通常一個表是足夠多。


如果你有幾十億的用戶,也許你可以做horizontal partitioning,使多個表。

+1

其不到1000名用戶。我猜是單桌吧。謝謝! – wackytacky99 2012-01-03 17:19:44

1

單表應該沒問題。我不同意在這種情況下,用戶的數量確實對其設計產生了很大的影響。

只要有可能,就應該設計自己的表來模擬天生現實生活。管理員,銷售代表等只是他們的描述/屬性。最終,他們都是「人」......或用戶。所以有一個「用戶」表「Admin」,「SalesRep」astibutes對我來說是有意義的。只有當用戶只能是一個「類型」時才使用「類型」方法。如果它們可以是多個用戶類型,請使用單獨的列。 IE瀏覽器。可以同時成爲SalesRepBranch2和SalesRepBranch3。可能考慮進一步正常化。