繁体   English   中英

数据库建模

[英]Database modeling

我的问题是关于对特定情况进行建模:在我的模型中,我有以下表格:用户,办公室和合作伙伴。 该系统具有不同的用户配置文件:Office用户(顾问,校长,助理),合作伙伴用户(机构,..),管理员用户。 在以下情况下,模拟办公室用户和合作伙伴用户之间关系的最佳方法是:-用户是唯一的(两个用户应该具有相同的登录名-应该在一个表中)-一个办公室用户仅与一个办公室相关联-A合作伙伴用户仅与合作伙伴关联。

它应该是办公室用户的表,而合作伙伴用户的表? 在这种情况下,多对多关系不起作用,对吗? 谢谢你的帮助。

您尚未为“合作伙伴和办公室”提供足够的定义,因此该模型的那些部分尚未完成,但是我认为您要提出的主要问题已在此“ 数据模型”中得到了回答。 据我了解:

  • 用户(登录名,用户名是唯一的,您不希望这样不清楚)
  • 用户是唯一的(即半圆中的X)办公室/合作伙伴/管理员
    • 需要一个Supertype-Subtype结构。 基数为1 :: 0-1
  • 用户仅属于(?)办公室或合作伙伴。
    • 可能是OfficeType或OfficeTitle。

如果您再定义最后一个项目,我可以完成模型。

不熟悉关系数据库建模标准的读者可能会发现▶IDEF1X Notation◀会有所帮助。

假设此模型永远不变,我将向用户添加一个字段以确定他们所属的位置。 您可以放入一个名为user_type的枚举,其可能的值为'office','partner'或'admin'。然后可以放入office_id和partner_id的列,以便根据需要加入表。

我认为最好的方法是采用帐户组结构,在该结构中,您可以使用关联表来确定谁属于哪个组...

id | 名称

group_assoc

group_id | 帐户ID

暂无
暂无

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

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