2008-01-22

無法啟用條件約束。一或多個資料列的值違反非 Null、唯一或外部索引鍵條件約束。

客戶回報網頁出現問題,我在自己本機上看到的錯誤信息如下:
真是奇怪啊,完全摸不著邊,直接到dataset.xsd去Preview Data...
又可以看到資料呈現無誤。

利用Toad for SQL Server比較(schema compare)新舊版本的db之後發現,
其中有一個欄位長度是Char(8)被改成Char(32),可是dataset.xsd確顯示還是舊的8
把長度改成32之後,一切都正常了。

Case closed....

後記:如果客戶會對欄位的長度一直修改的話,直接把MaxLength設成-1,表示無限大
那就再也不會出錯了

3 comments:

匿名 提到...

謝謝您的分享....
總算解決一個困擾

brokenmemory 提到...

我剛好也是這問題,奇怪就算重新設定TableAdapter也不行,不會變,一定要這樣改

PB 提到...

多謝你了, 哈哈~