Re: serial type as foreign key referential integrity violation
От | Shridhar Daithankar |
---|---|
Тема | Re: serial type as foreign key referential integrity violation |
Дата | |
Msg-id | 3D750BBC.18613.4D464337@localhost обсуждение исходный текст |
Ответ на | serial type as foreign key referential integrity violation (leozc@cse.unsw.edu.au (Zhicong Leo Liang)) |
Список | pgsql-hackers |
On 31 Aug 2002 at 5:28, Zhicong Leo Liang wrote: > Hi all, > Just briefly describe my problem. > I have two tables. > create table A( > a1 serial primary key, > a2 varchars(10) that should be varchar.. > ); > create table B( > b1 integer primary key, > b2 Integer, > foreign key(b2) references a(a1) > ) > insert into A values('123'); > select a1 from A where a2='123' > >-- > >a1 > >-- > >1 > >-- > insert into B values (1,1); > ERROR!! referential integrity violation - key referenced from B not found in A. this works.. I guess it's matter of writing a bit cleaner sql if nothing else. I am using postgresql-7.2-12mdk with mandrake8.2. I don't know which approach is better or correct, yours or mine. But this solves your problems at least.. test=# select * from a;a1 | a2 -----+----123 | (1 row) test=# insert into A(a2) values('123'); INSERT 4863345 1 test=# select * from a;a1 | a2 -----+-----123 | 1 | 123 (2 rows) test=# insert into b(b1,b2) values(1,1); INSERT 4863346 1 test=# select * from a;a1 | a2 -----+-----123 | 1 | 123 (2 rows) test=# select * from b;b1 | b2 ----+---- 1 | 1 (1 row) test=# ByeShridhar -- Concept, n.: Any "idea" for which an outside consultant billed you more than $25,000.
В списке pgsql-hackers по дате отправления: