A remoção de índices relacionados com constraints como as chaves primárias vai causar erro. Neste caso deve ser empregado o comando ALTER TABLE
Sintaxe:
DROP INDEX [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]
A cláusula IF EXISTS restringe a emissão de mensagens de erro caso os índices a serem excluídos não existam. O padrão é a emissão de erro ao se tentar excluir um índice inexistente.
CASCADE - Remove objetos que dependam do índice.
RESTRICT - Faz com que o índice não seja eliminado se existirem objetos filhos. é a opção padrão do PostgreSQL.
Exemplos:
1 - Exclusão de índice com IF EXISTS.
DROP INDEX IF EXISTS pais_cont_pkey_9;
O erro é convertido em NOTICE:
NOTICE: index "pais_cont_pkey_9" does not exist, skipping
Query result with 29 rows discarded.
Query returned successfully with no result in 16 ms.
2 - Exclusão de índice ind4.
DROP INDEX ind4;
Nenhum comentário:
Postar um comentário