0

我有一個獨特的索引要求,我無法弄清楚。在我的表MySQL唯一和NULL索引建議

三列

Code (VarChar) | User(Int - Nullable) | Item(Int - Nullable) 

我建立了一個獨特的指數Code AND User,另一個在Code AND Item

這意味着我們不能在任何點不止一個代碼指的是同一user如果itemNULL並且我們不能有多於一個的代碼指的是相同的item如果userNULL

但我有第三種情況...

我希望能夠擁有與用戶AND和Item相關的代碼,但對於同一個Item或User,可能已經存在。但是我不能這樣做,因爲它會與上面的一個索引發生衝突。

因此,鑑於上述的唯一索引,我也希望它可以插入這些記錄

Code (VarChar) | User(Int - Nullable) | Item(Int - Nullable) 
    12345678  |  NULL   |   1 
    12345678  |  1    |   NULL 
    12345678  |  2    |   1  ** This row clashes on ITEM ** 

這是可能的還是我的老毛病又犯一些愚蠢的事!?

回答

0

右鍵 - 答案似乎只是「不使用NULL

所以,如果我用的不是0 NULL不需要ItemUser數據哪裏有,我可以有唯一約束我需要!