【问题标题】:ER diagram relationship for user admin用户管理员的 ER 图关系
【发布时间】:2021-06-15 13:27:10
【问题描述】:

我正在设计一个健身房管理的数据库管理项目。有2个用户,一个是可以添加、删除和编辑所有培训师、中心和会员的店员,第二个用户是只能查看和编辑与他相关的某些属性的会员。 Member , center 和 trainers 是 ER 图中的 3 个实体,所以我应该为 clerk 介绍实体,如果是的话,它应该与上述三个实体中的任何一个有关系吗?

【问题讨论】:

    标签: database relationship entity-relationship


    【解决方案1】:

    我不会基于两个实体在您的系统中具有不同权限的事实来拆分它们。
    我建议您关注实体背后的概念:

    • 首先,如果所有属性都相等,我会开始考虑从两者中构建 1 个实体。一旦您最终得到多个主要为 null 的列,“合并”两个实体可能是错误的。
    • 除此之外,您还应该检查是否有可以为合并实体指定的中心名称。例如,如果您有两个实体:经理、员工,并且您想合并它们,我可能只是将其称为用户并检查属性在该上下文中是否仍然有意义。
    • 最后但并非最不重要的一点是,您应该考虑在开发后期如何使用实体。如果您在拆分实体后需要两个联接而不是一个联接,这可能是合并它们的一个论据。也许在开发的后期,您的“clark”实体将扩展几列,这样您最终可能会再次出现空列。

    我认为一般答案不适合,因为域不清楚。只需收集支持和反对合并实体的论据并进行比较。

    【讨论】:

    • 会员和职员属性不同,相差不止三个。由于它是健身房系统,因此它具有更多属性,例如性别等。而店员只有姓名和身份证。职员可以添加实体成员、培训师和位置的新实例。这种情况我该怎么办?
    • 好吧,既然你有不同的属性,我猜你应该把它们分成两个实体。因为它们基本上不一样。
    • 并将它们与所有其他三个实体相关联,还是只有一个可以?
    • 好吧,再一次没有一般的答案。如果它们之间存在现实世界的关系,那可能是有道理的。也许一个基本的例子可以帮助你。如果您有学校班级和学生,那么关系很有用。关系(外键约束)确保每个学生在任何给定时间都有一个班级。只是一个猜测:-您的 clark 实体“拥有”一个中心,因此它们之间应该存在关系。 - 克拉克创建了培训师/成员和中心之间的关系 -> 所以培训师和中心以及成员和中心之间应该存在关系。
    猜你喜欢
    • 2014-01-09
    • 2016-04-07
    • 2021-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 2017-09-18
    相关资源
    最近更新 更多