我正在学习成为 Java 开发人员的课程。
该课程涉及使用数据库,但不幸的是,我们从未真正设计过任何数据库。
大多数情况下,我们会获得预制的数据库,并且必须在其上实现代码以插入、更新、读取或删除数据。
但是当我的最终测试到来时,我很可能会制作涉及数据库的东西,因此我想尝试设计一些较小的东西来掌握设计的窍门,因为我注意到一个好的数据库设计在以下情况下会产生很大的不同编写代码以使用它。
我希望这些类型的问题在这里是允许的,而且不会太宽泛。
这是我为一些简单的东西而制作的小设计clubs
,members
带有addresses
和phonenumbers
。
- 会有多个俱乐部。
- 每个俱乐部都会有多个成员(显而易见)
- 一个会员不能是多个俱乐部的成员
- 一个成员可以有多个电话号码和电子邮件地址
- 一个会员只能有一个地址
- 一个地址可以属于不同的成员(夫妻或兄弟姐妹)
我最大的困惑:
如果我想在
Club
描述所有者的列中添加一个列,谁也将成为成员,在不将同一成员列出两次的情况下,最好的方法是什么?我应该将所有表放在 id 的自动增量上还是这是一个坏主意?(优点/缺点?)
如果我在外键选项卡中添加外键,这些外键会自动对应于正确的表还是我也必须将这些添加到列中?(见图2)
和我可能是noobiest 的问题...我把外键
phonenumber
和
(我很抱歉图片中的语言不是英语,我希望这不是什么大问题)