Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Thay đổi một chỉ mục không đơn nhất thành một chỉ mục duy nhất

Bạn không thể chuyển đổi một chỉ mục không phải là duy nhất thành một chỉ mục duy nhất.

(Thật khó để nói điều gì không thể làm được. Tôi dựa trên câu trả lời này khi xem xét ALTER INDEX của Tham chiếu Ngôn ngữ SQL, tìm kiếm từ UNIQUE và không tìm thấy bất kỳ gợi ý liên quan nào. Tôi nhìn vào 11g thay vì 10g, nhưng điều đó có lẽ tốt hơn trong trường hợp này vì có một số tính năng tồn tại trong 10g nhưng chỉ được ghi lại trong 11g.)

Tuy nhiên, bạn có thể sử dụng một chỉ mục không phải là duy nhất cho một ràng buộc duy nhất. Nhưng có một số cân nhắc về hiệu suất :một chỉ mục duy nhất sẽ nhỏ hơn và nhanh hơn.

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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hướng dẫn ORACLE SQL * Plus

  2. Cách thể hiện loại Blob có thể nối tiếp trong tệp ánh xạ ngủ đông

  3. Làm thế nào để có được tên chính xác trong khả năng chẩn đoán của Oracle trong JDBC?

  4. Cách tối ưu hóa một truy vấn Oracle có to_char trong mệnh đề where cho ngày

  5. Sử dụng cơ sở dữ liệu Oracle với xác thực biểu mẫu trong ứng dụng MVC3