Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Ändern Sie einen nicht eindeutigen Index in einen eindeutigen Index

Sie können einen nicht eindeutigen Index nicht in einen eindeutigen Index umwandeln.

(Es ist schwer zu sagen, was nicht getan werden kann. Ich stütze diese Antwort auf einen Blick auf den INDEX ÄNDERN Seite der SQL Language Reference, suchen nach dem Wort UNIQUE und finden keine relevanten Hinweise. Ich habe mir 11g anstelle von 10g angesehen, aber das ist in diesem Fall wahrscheinlich besser, weil es einige Funktionen gibt, die in 10g vorhanden sind, aber nur in 11g dokumentiert sind.)

Sie können jedoch einen nicht eindeutigen Index für eine eindeutige Einschränkung verwenden. Aber es gibt einige Überlegungen zur Leistung :Ein eindeutiger Index wäre kleiner und schneller.

create table my_table(a number);

create index my_table_index on my_table(a);

alter table my_table add constraint my_table_unique unique (a)
    using index my_table_index;