2010-10-12 77 views
1

即時通訊使用sql server 2008.我的情況如下。問題設計數據庫

有一個用戶表,用戶id,密碼,...領域的其餘

它的東西涉及到保險的情況如下

  1. 登錄的用戶是被保險人(這裏只有一個人)
  2. 登錄用戶有保險,並且在同一用戶下還有一個被保險人(這裏有兩個人,一個是登錄的,另一個是保險人,它是一個0多關係)
  3. 登錄用戶沒有投保,並且存在一名在同一用戶下投保。

這裏我的問題是保存登錄用戶和被保險人的個人資料。我的意思是登錄用戶和被保險人有相同的數據字段。我的意思是

如果登錄用戶和被保險人相同,那麼個人資料將是相同的。 (我不想在兩張不同的表格中重複相同的數據)

如果登錄用戶和被保險人不同,那麼個人數據對於兩者都是不同的。

我如何設計數據庫表

請幫助...

+0

您是否擁有保單保單? – Oded 2010-10-12 11:49:51

+0

是的,我有一個政策表 – Harsha 2010-10-12 12:02:20

回答

1

假設你有一個Policy表,持有不同的保險政策,我想創建一個多到多表連接的User表到Policy表使用其各自的ID。

這將允許您只更新一次用戶詳細信息,並以任何您想要的方式將策略鏈接到用戶。

對於您方案:

  1. 登錄的用戶的政策 - 該表將與政策的ID的用戶ID。
  2. 登錄用戶沒有策略,其他用戶有策略 - 該表將保存其他用戶ID和每個策略ID。
  3. 使用策略登錄用戶並且其他用戶擁有策略 - 該表將保存所有這些用戶ID和每個策略ID。
+0

但我不應該存儲用戶的個人數據在用戶表中。我需要另一個表來存儲個人數據。 – Harsha 2010-10-12 12:04:20

+0

@哈沙 - 首先,您需要將這些詳細信息添加到問題中。沒有人閱讀這個問題知道你是或不應該做的,如果你不解釋。您可以將個人信息存儲在您的個人數據表中,並將其用於您的聯接。 – Oded 2010-10-12 12:06:14

+0

你是禮儀,我不擅長提問。讓我試試你告訴 – Harsha 2010-10-12 12:13:06