2012-05-13 58 views
4

假设我有一个带3个字段的表为数据库中的单个字段存储多个值

Person_id,姓名和地址。现在问题是一个人可以有多个地址。而原子价值原则则认为数据应该是原子的。

那么我想如何为一个人存储多个地址?

+0

你好,我正在使用网站的功能,最初我不知道如何批准答案。 –

回答

11

您应该创建一个ADDRESS表,该表具有将其链接到PERSON记录的外键,即PERSON_ID。这是关系数据库的“关系”组件,这就是为什么它比平面文件(就像单个表格)更灵活。

+0

但那么地址表的主键是什么? –

+0

'ID'将是主键。 ADDRESS表有多个字段,以'ID','PERSON_ID','STREET','CITY'等开头。 – Marc

+0

好的,如果一个地址可以有多个人呢? –

0

将地址放在第二个表中,为每个地址分配一个“人员ID”,以便地址表中的多行可以引用个人信息。

0

我建议在地址表中添加一个地址类型以确定它是哪种类型的地址(Home,Vacation,Office)等等。类似于:引用列表表格的AddType,其中可以添加更多类型的列表马路。

相关问题