2017-08-04 71 views
0

我目前正在研究一個項目,我們有兩種類型的用戶。如何處理不同類型用戶表的主鍵?

我有一個普通的用戶表爲他們的User_ID,user_name等所有的數據,這兩個用戶是相似的。

我在網上看了一遍,發現它共同做出2個獨立的表格,只是在這些表格中有所不同。

由於現在我有兩個表(A和B),我的主鍵不能與我的User_ID相同,因爲我有2個數據庫。如果用戶1創建帳戶A,它將匹配,但如果用戶2創建帳戶B,則User_ID爲2,而表中的主鍵爲1.

是否最好手動將主鍵設置爲相同作爲user_ID?或者處理這個問題的最好方法是什麼?

+1

你有一個「普通用戶」表。 。 。還有什麼?什麼是'A'?什麼是'B'?什麼是「賬戶A」? 「帳戶B」?示例數據將確實有助於傳達您正在嘗試執行的操作。 –

+0

表B應該有一個表A的外鍵,它應該是主用戶表。 – EJP

+0

爲什麼不爲所有用戶設置一張表格,並且通過爲此目的添加的字段的值來區分它們,例如,用戶類型的枚舉。 – RichGoldMD

回答

1

我在網上看了一遍,發現它共同做出2個獨立的表格,只是在這些表格中有所不同。

我會很驚訝。這不是一個規範化的模式。

我想你應該有一個單一的表空列,否則按this answer here,否則(瘋狂)幹到底:完全正常化,並有表:一個用戶ID表,一個電話 - 沒有+地址表和一個電子郵件表,都帶有UserID外鍵,這顯然是主要的矯枉過正。如果使用輔助表,則只需從用戶標識表中加入用戶標識。

你當然不應該有兩個用戶表可以插入一個新的用戶ID。這是不正常的。

相關問題