2013-03-04 92 views
0

我已經開始設計數據庫了,因爲我是初學者,所以想問一下我的設計的最佳方式是什麼。如何正確設計USER表

我有一個數據庫應該存儲有關Web應用程序用戶的詳細信息。但是,用戶分爲兩組(可能是未來三組),可以說「客戶」和「工作人員」。這兩個羣體都有共同的信息(電子郵件,登錄名,密碼等),以及一些獨特的羣體。 在這種情況下,我想知道哪個解決方案更好:創建帶有重複列(「LOGIN」,「PASSWORD」)的單獨表格「CUSTOMER」和「WORKER」,或者將公共信息標記爲一個表「USER」並存儲「USER_ID 「在」客戶「和」工作人員「欄中。

在第二種情況下,應該如何使用hibernate 3.x註釋來解決它?因爲它不是嚴格的OneToOne映射。

在此先感謝您的幫助。

+1

http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/inheritance.html應該提供一個很好的起點。 – beny23 2013-03-04 22:43:15

+1

一種方法是有三張桌子。一個用於所有用戶,一個用戶組和用戶和組ID之間具有關係的最後一個表。 (把不同的用戶放在不同的表中,你可能會後悔) – jtheman 2013-03-04 22:50:20

回答

2

我更願意爲用戶提供一張表,併爲用戶角色(「客戶」,「工人」等)提供多對多關係。