从那个问题:
总结:
- 我的 CRUD 是:客户、员工和分支机构。
Customer
s 和Employee
s 与一Person
、一Individual
(与个人相关的字段)和一User
(用于登录目的)相关联。所以Individual
s 和User
s 总是与一个人Customer
或Employee
人有关。Branch
es 与一Person
和一相关联Company
(与公司人员相关的字段)。所以Company
s 总是与一个Branch
人有关。他们没有用户,因为他们隶属于该数据库所代表的公司——他们的员工可以在应用程序中进行身份验证。- 一个
Employee
属于一个Branch
。ABranch
有零个或多个Employee
s。(是的,图表不正确,对不起!) - 目前我正在使用一个位来区分
Employee
角色 - 我的员工拥有操作和管理权限。角色权限进入代码本身,在这里您可以意识到客户也有自己的角色......有什么建议可以实施更好(和简单)的方式来管理客户和员工的角色吗?
我应该如何更改错误的 3NF 结构以实现设计良好的单表继承,以便更好地使用 MVC 模式?
我试着简化了一下,现在我完成了这个新结构:
我还能改进吗?在哪里?你会如何建模?