实体关系 - 数据库设计

时间:2012-06-03 13:00:06

标签: database entity specialization

我正在考虑为培训师和客户数据库设计最佳设计。

我最初的想法是:

  1. 具有客户端和培训师(name,dob等)的公共属性的实体person。客户只能有一名培训师。一位培训师可以有很多客户。

  2. 我想知道是创建实体user来控制客户端和培训师权限,还是仅在Role中添加属性person

  3. 我考虑的另一件事是将所有内容都放在一个具有递归关系的实体中?

    有什么建议吗?

    感谢。

2 个答案:

答案 0 :(得分:0)

从实体角度来看,培训师和客户可能会有不同的数据,您需要跟踪每个数据。您仍然可以拥有全局用户表,但是培训师和客户端应该与用户实体保持1:1的关系。然后,您可以在客户端和培训师之间建立联接表。我建议在这里建立多对多的关系,以防有人真的想要成型,并希望有2名培训师。

答案 1 :(得分:0)

培训师可以培训吗?例如,一名专攻铁人三项运动员的教练可能是一名游泳运动员,并且有游泳教练。

我自己喜欢Role设计。