我有一个数据库设置。它有两个表,一个包含Events
Event_ID
,另一个包含Venues
Venue_ID
。这两个表的结构略有不同(事件包含date
和venue_name
,场地不包含)我对事件和场地都有描述,它们共享相同的结构。是否可以有一个可以引用descriptions
或event_id
的{{1}}表,或者最好保持这些分开?或者还有第三种选择吗?
场地+活动不能有多种描述(参考下面的评论)
答案 0 :(得分:0)
我不确定您的实体正在尝试做什么,但对我(母语为英语的人),"事件"与"场地"非常不同。一个"事件"是在某个特定时间点发生的事情。 "与会者"可以报名参加"活动"。 A"场地"是一个特别的地方。这些是非常不同的实体。
他们之间有关系。正如Alvaro在评论中指出的那样,venue_name
不是event
的适当属性。 venue_id
是适当的属性,在表之间创建链接。
您的问题的答案是您可以将描述放在单个表中,但在单个表中混合不同实体的描述通常没有意义(在大多数情况下)。通常,您只需将description
列添加到您想要该属性的表中。
在某些情况下,可能需要单个此类表。如果您要创建一个多语言数据库应用程序并且description
可以向用户显示,那么您可能希望将所有这些字符串存储在一个表中以便于翻译。