我有一個名爲countries
的表,我通過在SQL Server 2008 R2上創建「唯一鍵」類型的「索引/鍵」來定義country_name
列爲唯一鍵。唯一鍵與SQL Server 2008上的唯一索引
但我有以下問題:
- 將創建一個類型的「索引/鍵」「唯一鍵」自動創建該列的一個非聚集索引?
- 如果我將類型從「Unique Key」更改爲「Index」,並且我將
IsUnique
的值保持爲「Yes」,那麼會有什麼區別嗎? - 那麼爲什麼有兩個選項「Unique Key」和「Index」我認爲兩者是一樣的?
不確定它是否只是區分信息,但是'sys.indexes'有'is_unique_constraint'列來判斷索引是否被定義爲約束而不是唯一索引。 – 2017-07-20 15:31:40
@Andre Yep,這是元數據中的一列,以便*用戶*可以判斷它最初是否被聲明爲約束。這並沒有告訴你有關意圖的任何事情,索引本身的物理實現以及唯一性實施都是一樣的。 – 2017-07-20 18:34:25