【发布时间】:2012-01-06 23:13:12
【问题描述】:
诚然,我只是在这里寻找一些方向。我有一个特定的情况,作为数据库设计的新手,我不知道如何开始解决这个问题。让我先解释一下我的情况。
我有一个名为contacts 的mysql 表。顾名思义,它存储了一个联系人列表以及每个联系人的属性,例如名字、姓氏、电子邮件、电话号码等。我希望我的应用程序的用户能够添加无限数量的某些每个联系人的属性。因此,例如,不是一个联系人拥有一个电话号码,用户可以添加另一个号码,如果他们选择另一个号码,那么本质上,我的数据库中的一个联系人可以拥有用户需要的尽可能多的电话号码。这也适用于表中的其他字段,但为了简单起见,我们仅以电话号码为例。
那么解决这个问题的最佳方法是什么?我是否应该有一个名为 contactsPhone 的单独表并有一个匹配的 id 列,以便电话表中的任意数量的行都可以与联系人表中的一行相关联?或者有没有办法在联系人表中存储某种类型的 ArrayList,这样我就可以在一个字段中拥有多个电话号码?
【问题讨论】:
-
您可能应该查看文档数据库而不是关系数据库,因为您需要灵活的“模式”。
-
我的应用程序已经与 mysql 紧密耦合,因此切换数据库不是一种选择。