У меня есть следующая таблица
CREATE TABLE steps (
hash_id text UNIQUE PRIMARY KEY,
depth integer
);
-- Indices -------------------------------------------------------
CREATE UNIQUE INDEX steps_hash_id_key ON steps(hash_id text_ops);
CREATE UNIQUE INDEX steps_pkey ON steps(hash_id text_ops);
Но я хотел бы удалить избыточный индекс UNIQUE, потому что PRIMARY KEY
уже уникален.
У меня также есть много других связанных таблиц на hash_id
моей steps
таблицы с внешними ключами.
Когда я пытаюсь удалить свой UNIQUE index
следующим образом:
ALTER TABLE steps DROP CONSTRAINT steps_hash_id_key;
Я получаю
ERROR: cannot drop constraint steps_hash_id_key on table steps because other objects depend on it
DETAIL: constraint steps_routes_step_hash_id_fkey on table steps_routes depends on index steps_hash_id_key
constraint steps_likes_dislikes_step_hash_id_fkey on table steps_likes_dislikes depends on index steps_hash_id_key
HINT: Use DROP ... CASCADE to drop the dependent objects too.
Дело в том, что я не хочу каскадно удалять что-либо, я просто хотел бы удалить этот дублированный уникальный индекс. Возможно ли это?