Составное уникальное ограничение SQL

У меня есть таблица с родителями и детьми, каждая запись имеет идентификатор PRIMARY KEY, «имя» и «родительский», который ссылается на «идентификатор» другой записи.

Могу ли я применить ограничение UNIQUE для «имени» среди записей, которые имеют общий «родительский элемент»?


person Stephen    schedule 14.06.2016    source источник


Ответы (1)


Да. Это будет составной уникальный ключ:

alter table t add constraint unq_t_parent_name unique (parent, name);

Если вам все равно, есть ли у ограничения имя, вы можете просто создать уникальный индекс:

create unique index unq_t_parent_name on t(parent, name);
person Gordon Linoff    schedule 14.06.2016