【问题标题】:inserting some values in one field在一个字段中插入一些值
【发布时间】:2019-07-20 21:42:06
【问题描述】:

如何在一个数据库字段中插入多个值? 有可能吗?

我想为会议制作一张桌子,并邀请 很多人。那么如何将人员添加到我的会议桌?

【问题讨论】:

  • 每列一个值是要走的路。改为多行。一张会议表,包含地点、日期等,一张会议参加者表,包含会议 ID 和人员 ID 列。
  • 如何查询显示一个人的会议?
  • 感谢您的帮助

标签: sql entity-relationship data-modeling


【解决方案1】:

您必须选择多对多设计。一个人可以去很多次会议,很多人可以去一次会议。

Meetings table:
- MeetingId (int)
- Date (DateTime)

People table:
- PersonId (int)
- Name (char)

PeopleInMeeting table:
- MeetingId (int)
- PersonId (char)

这样你可以在你的会议中预订很多人(在 PeopleInMeeting 中有很多记录),o 一个人可以在多个会议中预订(同样的方式)

【讨论】:

    【解决方案2】:

    实体

    relational database 中,每个表将单一类型的记录存储为行(例如,单一的 Meeting,或单一的 Person,或单一的 MeetingAttendance)。表中的每条记录(行)都有一些列,一个主键(例如 ID)加上不同的属性(例如名称、日期、位置)。这个概念称为实体

    关系

    由于每种类型的记录都有一个,因此您现在可以使用外键对这些记录/表之间的关系进行建模,如果其是一个-一对一 (1:1) 或一对多 (1:n)。在您的情况下,单个person 可以访问/参加许多meeting单个meeting 可以被许多persons 访问。因此,我们将其命名为 MeetingAttendance,这种关系是多对多 (n:m)。这种 n:m 关系最好使用所谓的关联表来建模,该关联表存储两个外键。

    查看类似问题Relationships for “Meetings” List

    实体-关系 (ER)

    ER-model 或 ER 图描述了实体之间的这些关系。

    所以您的 ER 模型将如下所示:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-26
      • 1970-01-01
      • 1970-01-01
      • 2011-08-14
      • 1970-01-01
      相关资源
      最近更新 更多