我已经开始设计数据库,因为我是初学者,我想问一下在我的情况下设计的最佳方式是什么。
我有一个数据库,应该存储有关Web应用程序用户的详细信息。但是,用户分为两组(将来可能是三组),让我们说“客户”和“工人”。两个组都有共同的信息(电子邮件,登录名,密码等)和一些独特的组。 在这种情况下,我想知道哪个解决方案更好:创建具有重复列的单独表“CUSTOMER”和“WORKER”(“LOGIN”,“PASSWORD”)或将公共信息标记为一个表“USER”并存储“USER_ID”在“CUSTOMER”和“WORKER”栏目中。
在第二种情况下,如何使用hibernate 3.x注释解决它?因为它不是严格的OneToOne映射。
先谢谢你的帮助。
答案 0 :(得分:2)
我更倾向于为用户提供一个表格,并为用户角色提供一个表格("客户","工人"等等),具有多对多关系。