如何在一个数据库字段中插入多个值?可能吗?
我想为会议做一张桌子,并邀请很多人。那么如何将人员添加到我的会议桌呢?
您必须选择多对多设计。一个人可以去参加很多会议,很多人可以参加一个会议。
Meetings table:
- MeetingId (int)
- Date (DateTime)
People table:
- PersonId (int)
- Name (char)
PeopleInMeeting table:
- MeetingId (int)
- PersonId (char)
通过这种方式,您可以预订会议中的许多人(PeopleInMeeting中有许多记录),o一个人可以在许多会议中预订(同样的方式)
在relational database中,每个表都存储一种类型的记录作为行(例如单个Meeting
,或单个Person
,或单个MeetingAttendance
)。表中的每个记录(行)都有一些列,主键(例如ID)加上不同的属性(例如名称,日期,位置)。这个概念叫做实体。
由于对于每种类型的记录都有一个表,现在可以使用外键(如果是一对一(1:1)或一对多(1:n))来模拟这些记录/表之间的关系。在你的情况下,一个person
可以访问/参加许多meeting
和许多meeting
s可以访问单个person
。所以这个关系,让它命名为MeetingAttendance
,是多对多(n:m)。这种n:m关系最好使用所谓的关联表建模,该关联表存储两个外键。
看到类似的问题Relationships for “Meetings” List。
ER-model或ER图描绘了实体之间的这些关系。
所以你的ER模型看起来像这样: