PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Devo specificare sia INDEX che UNIQUE INDEX?

Se si dispone di un INDICE UNICO, non è necessario anche l'INDICE:sarebbe ridondante. Un INDICE UNICO è sia un vincolo univoco che un indice che può essere utilizzato come qualsiasi altro indice.

Dalla documentazione:

Nota :Il modo preferito per aggiungere un vincolo univoco a una tabella è ALTER TABLE ... ADD CONSTRAINT. L'uso di indici per imporre vincoli univoci potrebbe essere considerato un dettaglio di implementazione a cui non si dovrebbe accedere direttamente. Si dovrebbe, tuttavia, essere consapevoli del fatto che non è necessario creare manualmente indici su colonne univoche; così facendo duplicherebbe semplicemente l'indice creato automaticamente.

Enfasi mia.