INT array field referencing same table
От | Gareth Kirwan |
---|---|
Тема | INT array field referencing same table |
Дата | |
Msg-id | KMEELFAKJGHIGGNIDGHDCEACJPAA.gbjk@thermeoneurope.com обсуждение исходный текст |
Ответы |
Re: INT array field referencing same table
Re: INT array field referencing same table |
Список | pgsql-admin |
I just wanted to check that this is the right syntax for a table.
CREATE TABLE articles (
id INT PRIMARY KEY DEFAULT nextval('articles_seq'),
category INT,
type INT,
title VARCHAR(50),
description TEXT,
link INT,
date timestamp,
related[] INT,
CONSTRAINT articles_categories_const FOREIGN KEY (category) REFERENCES a_categories (id) ON DELETE CASCADE,
CONSTRAINT articles_types_const FOREIGN KEY (type) REFERENCES a_types (id) ON DELETE CASCADE,
CONSTRAINT articles_links_const FOREIGN KEY (link) REFERENCES a_links (id) ON DELETE CASCADE,
CONSTRAINT articles_related_const FOREIGN KEY (related) REFERENCES articles (id)
);
id INT PRIMARY KEY DEFAULT nextval('articles_seq'),
category INT,
type INT,
title VARCHAR(50),
description TEXT,
link INT,
date timestamp,
related[] INT,
CONSTRAINT articles_categories_const FOREIGN KEY (category) REFERENCES a_categories (id) ON DELETE CASCADE,
CONSTRAINT articles_types_const FOREIGN KEY (type) REFERENCES a_types (id) ON DELETE CASCADE,
CONSTRAINT articles_links_const FOREIGN KEY (link) REFERENCES a_links (id) ON DELETE CASCADE,
CONSTRAINT articles_related_const FOREIGN KEY (related) REFERENCES articles (id)
);
The bit that I'm curious about is the related field.
Can I do it like this / Should I do it like this.
The array of integers should reference the id of the same table.
If anyone has any more general comments about the design, They'd be welcome too :-)
Should I index the date field if i expect it to be searched upon regularly ???
Thanks
Regards
Gareth Kirwan
Programming & Development,
Thermeon Europe Ltd,
gbjk@thermeoneurope.com
Tel: +44 (0) 1293 864 303
Thermeon Europe e-Card: gbjk
Programming & Development,
Thermeon Europe Ltd,
gbjk@thermeoneurope.com
Tel: +44 (0) 1293 864 303
Thermeon Europe e-Card: gbjk
В списке pgsql-admin по дате отправления: