Re: table inheritance and foreign key troubles
От | Christof Glaser |
---|---|
Тема | Re: table inheritance and foreign key troubles |
Дата | |
Msg-id | 20010911091250.B8DD213061@pinguin.gl.aser.de обсуждение исходный текст |
Ответ на | table inheritance and foreign key troubles (Kevin Way <kevin.way@overtone.org>) |
Ответы |
Re: table inheritance and foreign key troubles
Re: table inheritance and foreign key troubles |
Список | pgsql-sql |
On Tuesday, 11. September 2001 10:04, Kevin Way wrote: > I'm having a little trouble with some inherited tables and a foreign > key. Here's a simplified case, to show the trouble. > > CREATE TABLE node ( > node_id SERIAL NOT NULL, > name TEXT NOT NULL, > PRIMARY KEY (node_id) > ); > -- works just fine > > CREATE TABLE users ( > email TEXT NOT NULL > ) INHERITS (node); > -- so far so good.... > > CREATE TABLE item ( > reason TEXT NOT NULL, > author_id INT NOT NULL REFERENCES users (node_id) > ) INHERITS (node); > ERROR: UNIQUE constraint matching given keys for referenced table > "users" not found That means, there is no UNIQUE constraing on users.node_id ;-) Since users inherits that field from node, just make node.node_id unique, or even a primary key. > Does this operation just require differing syntax, because the > referenced field is inherited from another table, or is this not > possible? In previous versions of Postgres it was possible to reference non-unique fields. With 7.1.x this is, correctly, no longer possible. Inheritance doesn't have anything do to with it in your case, though. Hope that helps, Christof -- gl.aser . software engineering . internet service http://gl.aser.de/ . Planckstraße 7 . D-39104 Magdeburg
В списке pgsql-sql по дате отправления: