【发布时间】:2015-08-14 02:44:55
【问题描述】:
我可能在这里过度思考了一个问题,很可能会被否决,但我已准备好接受打击。我正在数据仓库中构建我的第一个模式。
2 表:事件和联系人:
events(id(pk), cid, other, fields, here)
contacts(id (pk), cid(fk), other, fields, here)
有人访问我们的网站并注册。在事件列“id”中生成一个行项目,并为联系人生成一个“cid”。一条新记录被添加到联系人中。
我有两个问题:
- 我可以将联系人的主键设置为 cid 吗?所以主键也是外键?
- 我正在使用 MySQL Workbench 创建架构。当我创建联系人表时,我可以将 cid 的外键和基数设置为 1-1 或 1-many。从联系人表的角度来看,关系是 1-1 还是 to many?联系人中只会有 1 条 cid 记录,但如果该用户执行多项操作(例如接收来自我们的电子邮件等),它们将在事件表中出现多次。所以,逻辑上是 1-many。但是当在 Workbench 中创建它时,关系线看起来好像是一对多的关系,其中许多部分在联系人处,而不是根据需要反过来。应该反过来吧?
events.cid和contacts.cid是什么关系?
【问题讨论】:
标签: database-schema