【问题标题】:Database design to manage user meetings用于管理用户会议的数据库设计
【发布时间】:2011-02-20 18:17:28
【问题描述】:

我有一个现有的数据库,里面有很多用户。这些用户将分为两种类型,我们将其称为 A 组和 B 组。我需要创建一个系统,让 A 组可以在 20 个特定时间段安排与 B 组中的一个人的会议。要按照我想要的方式执行此操作,我需要:

  • 一种提取组 B 中的所有用户以及他们在插槽 X 会面的人的列表的方法,包括当时没有开会的用户被标记为 NULL 或类似的。或者(坦率地说,最好是),这可以是 B 组中所有用户的所有插槽的数组。
  • 一种为给定用户提取完整时间表的方法,无论是在 a 组还是 B 组中

我想不出一种体面的方法来构建数据库以使这些查找变得容易。有什么想法吗?

【问题讨论】:

  • 请完善您对 MEETING 实体的解释。会议会是“来自 A 的人”-“来自 B 的人”吗?还是更像“来自 A 的人”-“来自 B 的一群人”?
  • 已编辑。一对一会议。谢谢。

标签: database database-design


【解决方案1】:

我可能会为用户提供一个类型为...(A 或 B)的表格。用于定义特定会议时间的“会议时段”。具有 UserWhoScheduled(非必需)、“会议时段”和 MeetingID 的会议表。用于将用户链接到会议的 User_meeting 表。

查找将相当简单。

【讨论】:

  • 会议时段会是自己的桌子吗?
  • 好吧,如果他们被定义为会议时段......当然......但它本质上是一个“查找”表并且可以被删除。它只允许您将这些时间强制为安排会议的唯一允许时间。否则人们可以使用任何时间段。当然,您可以在您的应用程序中强制执行这些规则......但是通过在数据库中执行此操作并且不将对该表的权限授予最终用户,数据库也会强制执行数据规则。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多