16
我有一種情況,我需要根據另一列值對列[屬性]強制執行唯一約束。oracle db中的條件唯一約束
因此,例如,我有類似於表(ID,EID,名稱,請將isDeleted)的表
請將isDeleted只能有一個值零或「Y」(活性或刪除),並且我想創建一個唯一的EID限制,ISDeleted只有當ISDeleted = null,因爲我不在乎是否有多個刪除記錄具有相同的ID。請注意,EID可以具有空值。
我正在使用Oracle DB進行此操作。
什麼會'其他空'呢? 它會插入空值還是允許重複的記錄插入? – D3V 2012-04-26 05:29:02
@SantoshPingale - 由於Oracle索引不會索引NULL值,所以'ELSE NULL'會從索引中排除那些允許重複的行。 – 2012-04-26 14:33:09