Sql 表';关系
我开发了简单的数据库,但我混淆了下一个问题:我为Sql 表';关系,sql,sql-server,tsql,Sql,Sql Server,Tsql,我开发了简单的数据库,但我混淆了下一个问题:我为'Employe'、'Author'和'Manager'分离了实体(表)。在“Employe”表中,我有一列“Appointment”,它可以包含一些职业,特别是“Author”和“Manager”(但它也可以包含另一个职业,例如“Seller”,“版权人”等)。如何在数据库中实现它?我使用什么关系? < P>我认为你应该考虑把你的职业抽象成角色表。按以下结构排序: RoleID | RoleName 1 | Author 2
'Employe'
、'Author'
和'Manager'
分离了实体(表)。在“Employe”表中,我有一列“Appointment”,它可以包含一些职业,特别是“Author”和“Manager”
(但它也可以包含另一个职业,例如“Seller”
,“版权人”
等)。如何在数据库中实现它?我使用什么关系? < P>我认为你应该考虑把你的职业抽象成<代码>角色<代码>表。按以下结构排序:
RoleID | RoleName
1 | Author
2 | Manager
3 | Copyrighter
etc...
然后,您的Employee
表的Appointment
列将包含此角色表的外键(RoleID
):是否可以在单个表中组合作者和经理实体?@voo我以后如何区分它们?在新角色表中创建Id字段RoleID和RoleName,并将它们作为一个键分配到您的单个表中?这看起来不错,但它只是对“如何填写员工表的约会栏”这一问题的回答。在我的例子中,我已经将与“合同”实体相关的“经理”和“作者”的表以及一些额外的表分开。是否没有必要在“经理”、“作者”和“角色”表(您添加的)之间创建一些额外的关系?