2011-07-19 65 views
1

的重複鍵行當更新行時出現上述錯誤。 idxRelatiesoortRelatiecodefldRelatieSoortfldRelatieSoort組成,兩者的組合在表中只存在一次。更新行時:無法在對象'dbo.tblRelatie'中插入具有唯一索引'idxRelatiesoortRelatiecode'

那麼可能是這個錯誤的原因是什麼?

更新 這裏是更新腳本

UPDATE [SQL].[MyDatabase].dbo.tblRelatie SET 
fldNaam = 'De heer A. Removed', 
fldAdres = 'Removed 12', 
fldPostcode = '1234 AA', fldPlaats = 'Removed', 
fldCorrespondentieAdres = 'Removed 12', 
fldCorrespondentieAdresPostcode = '1234 AA', 
fldCorrespondentieAdresPlaats = 'Removed', 
fldRelatieSoort = 1, 
fldRelatiecode = 907534, 
fldCorrespondentieAdresLandID = 1, fldMobieleTelefoon = '', fldTelefoon = '', fldFax = '', fldEmail = '', fldWebsiteUrl = '', fldBankrekeningnummer = '', fldNaamRekeninghouder = '', 
fldPlaatsRekeninghouder = '', fldKrediettermijn = 30, fldLandID = 1 
WHERE fldRelatieID =1507; 

,這是idxRelatiesoortRelatiecode:

CREATE UNIQUE NONCLUSTERED INDEX [idxRelatiesoortRelatiecode] 
ON [dbo].[tblRelatie] 
(
    [fldRelatieSoort] ASC, 
    [fldRelatiecode] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, 
IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON,  
ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 90) ON [PRIMARY] 
+0

向我們展示更新聲明 – gbn

回答

5

沒有錯誤消息太多不確定性:你設置重複某處

  • 或者:組合已經存在,你正試圖重新插入
  • 或者:它不存在,你是用相同的組合

或者重疊更新多行:

  • 組合已存在,則使用相同的組合更新多行

除非指數或這樣是錯誤的...

+0

這就是我的想法,但是當我查詢兩個索引列時,它只返回一行:我正在更新的行 – jao

+0

SELECT * FROM dbo.tblRelatie有多少行WHERE fldRelatieID = 1507'和'SELECT * FROM dbo.tblRelatie WHERE fldRelatieSoort = 1 AND fldRelatiecode = 907534'? – gbn

+0

各1行。當然,'SELECT * FROM dbo.tblRelatie WHERE fldRelatieSoort = 1'有多行,因爲relatiesoort(關係類型)是一種枚舉類型。 – jao

相關問題