2015-10-16 130 views
1

我在數據庫上的一些表上有一堆FK約束。但是這些FK列沒有編入索引。在外鍵約束列上創建非唯一索引

在創建索引時,創建哪個索引時是否有關係 - 唯一還是非唯一?

創建非唯一索引是否對這些由外鍵約束引用的列產生影響?

回答

2

索引可以是唯一的或非唯一的。唯一索引保證表中沒有兩行的鍵列(或多列)中有重複值。非唯一索引不會對列值施加此限制。

因此,這取決於您要在FK列中存儲哪些數據 - 唯一或不是。 但通常(當你有一對多的關係時),它不是唯一的數據,例如在部門工作的員工 - department_id是FK,但能夠在同一部門工作的員工很少,所以本專欄不是唯一的。