Tôi có một bảng như thế này:Làm cách nào để tạo một ràng buộc duy nhất của SQL dựa trên 2 cột?
|UserId | ContactID | ContactName
---------------------------------------
| 12456 | Ax759 | Joe Smith
| 12456 | Ax760 | Mary Smith
| 12458 | Ax739 | Carl Lewis
| 12460 | Ax759 | Chuck Norris
| 12460 | Bx759 | Bruce Lee
tôi cần phải thêm một ràng buộc tới bảng này để không sử dụng có thể có liên hệ trùng lặp id của. Người dùng đang nhập dữ liệu từ các hệ thống bên ngoài khác nhau để ContactId không phải là duy nhất trên bảng nhưng sẽ là duy nhất trên cơ sở mỗi người dùng.
Tôi biết cách tạo các đường viền Độc đáo và Không Null dựa trên các cột đơn nhưng làm cách nào tôi có thể tạo một đường viền duy nhất trên 2 cột?
Sự khác biệt giữa hai phương pháp là gì? Có một số trường hợp nào đó được ưu tiên hơn trường hợp khác không? Cách tiếp cận chỉ mục có nhanh hơn trên một tập dữ liệu lớn không? – Zapnologica
@Zapnologica Vui lòng kiểm tra câu hỏi khác về chủ đề cụ thể này: http://dba.stackexchange.com/questions/144/when-should-i-use-a-unique-constraint-instead-of-a-unique-index – Jonathan