【问题标题】:Design Database Entity and Relations设计数据库实体和关系
【发布时间】:2018-10-08 15:14:02
【问题描述】:

我想创建网站来组织活动(活动管理),活动组织者将为活动创建门票。所以这背后的想法是让组织者能够管理他们的人群和容量。

用户可以对活动进行评论和评分并发表评论,也许还可以取消门票,我需要他能够根据城市或日历浏览活动。

所以我像这样设计了我的数据库,但我认为在继续之前它需要更多改进。我真的需要你的帮助。

用户表 ID、姓名、电子邮件、密码、性别、手机

角色表 RoleID,名称(这里我的意思是 id 1 代表管理员,2 代表组织者,3 代表用户)

事件表 EventID、名称、类别、城市、日期、时间、描述、座位(容量)

评级表 ID、评分、评论、EventID、UserID

用户和角色表之间存在关系 N:1 用户表和事件表之间存在关系 M:N

我应该如何为评级表建立关系?它有两个表(用户和事件)吗?什么类型的关系?

所有表格中的任何建议?

【问题讨论】:

    标签: sql database


    【解决方案1】:

    你可以像这样构建数据库

    1. 角色表 角色 ID|角色名称
    2. 用户表 用户 ID|角色 ID|姓名|电子邮件|密码|性别|手机
    3. 事件表 EventId|UserId|名称|类别|城市|日期|时间|描述|座位(容量)
    4. 评级表 RatingId|EventId|UserId|评论

    我已突出显示具有外键关系的列名。让我知道这是否有帮助。

    【讨论】:

    • 评分表怎么样,我需要 USERID FIELD TWICE 一个用于评分的用户,另一个 id 用于将被评分的 OrganizerID.. 可以吗?
    • 事件表具有创建/组织事件的用户 ID,并且该事件 ID 将在评级表中使用,因此您将自动获得组织者用户 ID 以及正在评级事件的用户的用户 ID。希望这会有所帮助!
    • 但我如何在 ER DIAGRAM 中表示它?我的意思是评级表和其他之间的关系?
    • 您可以显示这些实体之间的关系,例如:- 角色表和用户表具有 1-1 关系。并且用户表和事件表具有 1-M 关系
    • 添加到@ShwetaKhude 答案。您将通过 INNER JOIN 查询来管理查看数据的内容和方式。虽然很好的数据库规范化。 :)
    猜你喜欢
    • 2014-11-30
    • 1970-01-01
    • 1970-01-01
    • 2013-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多