我有這樣一個表:如何根據2列創建SQL唯一約束?
|UserId | ContactID | ContactName
---------------------------------------
| 12456 | Ax759 | Joe Smith
| 12456 | Ax760 | Mary Smith
| 12458 | Ax739 | Carl Lewis
| 12460 | Ax759 | Chuck Norris
| 12460 | Bx759 | Bruce Lee
我需要一個約束添加到此表,以便任何用戶都可以有重複的聯繫人的ID。用戶正在從各種外部系統導入數據,因此ContactId在整個電路板上不會是唯一的,但是在每個用戶的基礎上將是唯一的。
我知道如何創建基於單列的唯一約束和非零約束,但是如何創建跨2列的唯一約束?
這兩種方法有什麼區別?在某些情況下,哪一個比另一個更受歡迎?在大型數據集上索引方法會更快嗎? – Zapnologica 2015-07-07 06:32:42
@Zapnologica請檢查這個關於這個特定主題的其他問題:http://dba.stackexchange.com/questions/144/when-should-i-use-a-unique-constraint-instead-of-a-unique-index – Jonathan 2015-07-08 06:44:57