繁体   English   中英

员工、部门和角色层次结构的数据库设计

[英]Database design for employee, department and role hierarchy

假设我有员工和部门以及员工角色,其中一名员工可以属于具有不同角色的不同部门。

例如,Emp 1 属于具有角色经理的 Dept 1。 同一员工可以属于具有服务人员角色的 Dept 2。

每个员工还有一个像 Emp 2 这样的子层次结构,Emp 3 属于具有角色助手的 Dept 1,其父级是 Emp 1。

在这种情况下,设计这个概念的最佳解决方案是什么。 请分享您的意见。

考虑实体和属性:

员工:身份证、姓名

部门:deptID、dept_name

角色:role_id、role_name

我将尝试 state 您概述的业务域,然后将其转换为模式建议。

系统有0个或多个员工

系统有0个或多个部门

系统有 0 个或多个角色<<编辑:您的评论说“父”角色是特定于部门的>>员工属于 1 个或多个部门,并且在该部门内只有一个角色和一个级(父级是另一名员工)

Employee
------------
Employee_id (pk)
Name

Roles
------
Role_id (pk)
Name

Departments
-----------
Department_id (pk)
Name

Employee_deparment_role
-------------------------
employee_id (pk, fk)
department_id (pk, fk)
role_id (pk, fk)
Parent_id (pk, fk to employees) 

此 model 仅捕获一个 state - 它不允许人们更改部门或角色或“父母”,但您没有提到这是一项要求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM