just get rid of the serial_id in person2adress -- there is no reason for it.
Make the pk of that table a composite --> person_id, address_id <-- that way you have 
added some additional integrity to your structure. Only one record can exist ffor a 
given person at a given address. However any person can have any number of address and 
any address can have any number of people living at it.

Morgan
At 12:39 PM 10/5/2001 +0200, Janning Vygen wrote:
>Hi,
>
>i create n to n relations like this, right?
>
>create table person (
>  id    serial,
>  name  text
>);
>
>create table address (
>  id     serial,
>  street text
>  ...
>);
>
>create table person2adress (
>  id         serial,
>  person_id  integer not null references person(id),
>  address_id integer not null references address(id),
>);
>
>than i can select all adresses from one person with id =1 with
>select street 
>from address 
>where id = 
>  (
>     select adress_id 
>     from person2adress 
>     where person_id = 1
>  );
>
>ok so far so good. but you can still insert persons without any 
>adress. so its a 0..n relation. But how van i achieve that you canīt 
>insert any person without adress???
>
>thanks in advance
>janning
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Don't 'kill -9' the postmaster 

-------------
Morgan Curley
Partner, e4media
[EMAIL PROTECTED] 
917 751 8328
http://www.e4media.com
-------------------------


---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

Reply via email to