Re: Foreign Key for multi PK or design question
От | Alvaro Herrera |
---|---|
Тема | Re: Foreign Key for multi PK or design question |
Дата | |
Msg-id | 20071211194246.GK10710@alvh.no-ip.org обсуждение исходный текст |
Ответ на | Re: Foreign Key for multi PK or design question (PostgreSQL Admin <postgres@productivitymedia.com>) |
Список | pgsql-sql |
PostgreSQL Admin wrote: > This is my layout so far: > > CREATE TABLE users ( > id serial NOT NULL, > --question REFERENCES questions(id) ON DELETE CASCADE ## ON REMOVED## > ); > > CREATE TABLE questions ( > id serial NOT NULL, > questions varchar(450) NOT NULL > ); > > CREATE TABLE answers ( > id serial NOT NULL, > question_id int REFERENCES questions(id) ON DELETE CASCADE, > user_id int REFERENCES users(id) ON DELETE CASCADE, > answer varchar(450) NOT NULL, > created timestamptz NOT NULL > ); > > Originally I wanted to have a foreign key that would be the pk of the > question table. So if the user answered Q2, 5 and 6 - the user.fk would > store values 2,5,6 - but I have passed most of logic to the answer table. That would have made no sense. > Does this look correct? or most efficient? Yeah it seems sane, however you have forgotten to add NOT NULL to the FK fields. -- Alvaro Herrera http://www.PlanetPostgreSQL.org/ "No me acuerdo, pero no es cierto. No es cierto, y si fuera cierto,no me acuerdo." (Augusto Pinochet a unacorte de justicia)
В списке pgsql-sql по дате отправления: