Thread: 2 versions of an entity worth distinct table?

2 versions of an entity worth distinct table?

From
gvim
Date:
If a table representing contact details can have 2 but no more than 2 email addresses is it really worth factoring-out
emailaddresses to a separate table. Technically it's a 1-to-many relationship so should be done this way but what is
thegeneral practice out there in such "max. 2" situations? Keeping them as: 

Primary Email
Secondary Email

.... also preserves priority though not strictly normalised, I know.

gvim

Re: 2 versions of an entity worth distinct table?

From
Thomas Kellerer
Date:
gvim wrote on 27.12.2010 02:47:
> If a table representing contact details can have 2 but no more than 2
> email addresses is it really worth factoring-out email addresses to a
> separate table.

If you are absolutely sure you will never have more than two, then I agree, you don't need to create a 1:N relationship
forthat. 
Especially because guaranteeing that there will never be more than two in the N part is quite complicated.

Regards
Thomas

Re: 2 versions of an entity worth distinct table?

From
Radosław Smogura
Date:
Hi,

In this particular case it isn't worth to add separate table just for
additional e-mail.


gvim <gvimrc@gmail.com> Monday 27 December 2010 02:47:29
> If a table representing contact details can have 2 but no more than 2 email
> addresses is it really worth factoring-out email addresses to a separate
> table. Technically it's a 1-to-many relationship so should be done this
> way but what is the general practice out there in such "max. 2"
> situations? Keeping them as:
>
> Primary Email
> Secondary Email
>
> .... also preserves priority though not strictly normalised, I know.
>
> gvim

Re: 2 versions of an entity worth distinct table?

From
Rob Sargent
Date:
But then a) because you can't guarantee this design won't 'improve' and
b) you would like to look in one place for all addresses, normalize now.

Thomas Kellerer wrote:
> gvim wrote on 27.12.2010 02:47:
>> If a table representing contact details can have 2 but no more than 2
>> email addresses is it really worth factoring-out email addresses to a
>> separate table.
>
> If you are absolutely sure you will never have more than two, then I
> agree, you don't need to create a 1:N relationship for that.
> Especially because guaranteeing that there will never be more than two
> in the N part is quite complicated.
>
> Regards
> Thomas
>
>

Re: 2 versions of an entity worth distinct table?

From
Chris Browne
Date:
gvimrc@gmail.com (gvim) writes:
> If a table representing contact details can have 2 but no more than 2 email addresses is it really worth
factoring-outemail addresses to a separate table. Technically it's a 1-to-many relationship so should be done this way
butwhat is the general practice out there in such "max. 2" situations? Keeping them as: 
>
> Primary Email
> Secondary Email
>
> .... also preserves priority though not strictly normalised, I know.

I'd be inclined to normalize this, as it's:

a) difficult to guarantee that it will only ever be 2.

b) mighty nice to be able to attach validation rules to ONE simple email
   table, rather than having to put them on several columns possibly
   spread across more tables.
--
wm(X,Y):-write(X),write('@'),write(Y). wm('cbbrowne','gmail.com').
http://linuxfinances.info/info/internet.html
If nothing ever sticks to Teflon, how do they make Teflon stick to the
pan?