Добавить ограничение уникальности для существующего индекса в PostgreSQL


У меня есть индекс в моей базе данных PostgreSQL 9.3:

CREATE INDEX index_foos_on_bar_and_baz ON foos USING btree (bar, baz);

(из миграции схемы с использованием Ruby on Rails)

Индекс присутствует и делает вещи быстрее. Теперь, когда я очистил дубликаты Foo, я хотел бы сделать этот индекс уникальным:

CREATE UNIQUE INDEX index_foos_on_bar_and_baz ON foos USING btree (bar, baz);
Есть ли способ изменить существующий индекс и сделать его уникальным? Или проще / быстрее удалить существующий индекс и создать новый, уникальный?
1 3

1 ответ:

Изменить индекс на уникальный невозможно. Вы можете посмотреть, что можно изменить на индекс в alter index document .

В этом случае вам нужно удалить и создать новый уникальный индекс.