Внутренний внешний ключ

getOverHere
Дата: 09.03.2015 08:09:48
Есть таблица posts(id_post serial, main_post boolean, id_thread integer)
Как сделать ограничение что-то вроде внутреннего внешнего ключа - чтобы id_thread могло быть только одним из id_post? (и желательно еще могло быть пустым, если main_post = true)
И как вообще лучше такие ситуации решать?
http://www.postgresql.org/docs
Дата: 10.03.2015 11:40:12
getOverHere
Как сделать ограничение что-то вроде внутреннего внешнего ключа - чтобы id_thread могло быть только одним из id_post? (и желательно еще могло быть пустым, если main_post = true)
alter table add foreign key

getOverHere
И как вообще лучше такие ситуации решать?
Читать и перечитывать документацию. Если не хватает понималки - экскрементировать до просветления.
getOverHere
Дата: 11.03.2015 18:05:45
http://www.postgresql.org/docs
getOverHere
Как сделать ограничение что-то вроде внутреннего внешнего ключа - чтобы id_thread могло быть только одним из id_post? (и желательно еще могло быть пустым, если main_post = true)
alter table add foreign key

getOverHere
И как вообще лучше такие ситуации решать?
Читать и перечитывать документацию. Если не хватает понималки - экскрементировать до просветления.

Значит pgadmin не дает фк на эту же таблицу сделать
Какую документацию? Я спрашиваю совета, как сделать лучше, best practices, сомневаюсь что я найду это в доке по PostgreSQL
Maxim Boguk
Дата: 12.03.2015 03:32:23
getOverHere
http://www.postgresql.org/docs
пропущено...
alter table add foreign key

пропущено...
Читать и перечитывать документацию. Если не хватает понималки - экскрементировать до просветления.

Значит pgadmin не дает фк на эту же таблицу сделать
Какую документацию? Я спрашиваю совета, как сделать лучше, best practices, сомневаюсь что я найду это в доке по PostgreSQL


не понятно какой best practices вы хотите если вам обыкновенный foreign key нужен для такой задачи.
(возможно в сочетании с check для контроля второго условия).

--Maxim Boguk
www.postgresql-consulting.ru
а был ли п/у.к.
Дата: 12.03.2015 11:20:48
getOverHere
Значит pgadmin не дает фк на эту же таблицу сделать
если тебе не дают, возможно причина в тебе.