A easy way to handle this:
create table marble
( id int4 primary key, color1 int4, color2 int4, color3 int4
);
create table color
( id int4, desc text
);
color1, color2, and color3 point to the id in color table.
This way you can expand your color table indefinitely.
On 27 Jun 2001 23:44:34 -0500, Christian Anton wrote:
> Hello all,
>
> I am fairly new at db design, I have built a few simple in the past and have
> never dealt with this type of problem before, any help would be appreciated.
>
> I have three attributes in one table that should reference one, and only
> one, attribute in another table. Here's an analogy of the problem:
>
> I have a table with a list of marbles, each marble has three colors in it
> (color1, color2, color3) and a serial number. In another table I have eight
> colors to choose from but the list of colors grows regularly.
> How do I associate a marble with three colors from the color table (a marble
> may have three red sides or red-yellow-blue)?
>
> Thanks,
> Christian
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://www.postgresql.org/search.mpl
>
--
Wei Weng
Network Software Engineer
KenCast Inc.