Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Restrição única sem índice


Não, você não pode ter uma restrição UNIQUE no Oracle sem um índice correspondente. O índice é criado automaticamente quando a restrição é adicionada e qualquer tentativa de descartar o índice resulta no erro
ORA-02429: cannot drop index used for enforcement of unique/primary key

Boa sorte.

EDITAR


Mas você diz "Digamos que eu tenha uma mesa grande". Então, de quantas linhas estamos falando aqui? Veja, SSDs de 1 TB custam menos de US $ 100. Os laptops quad-core custam menos de US$ 400. Se você está tentando minimizar o uso de armazenamento ou a queima de CPU escrevendo um monte de código com aplicabilidade mínima para "economizar dinheiro" ou "economizar tempo", minha sugestão é que você está desperdiçando ambos hora e dinheiro . Repito - UM TERABYTE de armazenamento custa o mesmo que UMA HORA de tempo do programador. UM COMPUTADOR novinho em folha custa o mesmo que QUATRO HORAS RUINS de tempo de programador. Você está muito, muito melhor fazendo o que puder para minimizar o TEMPO DE CÓDIGO, em vez das metas de otimização tradicionais de tempo de CPU ou espaço em disco. Assim, afirmo que o índice UNIQUE é a solução de baixo custo.