原文連結:https://blog.csdn.net/ClearLoveQ/article/details/80736543
https://blog.csdn.net/mustbelove/article/details/1381733
更新資料庫報出這個問題,也是第一次見這個問題,來記錄下。
問題產生的原因是資料庫裡資料修改了,但記憶體的資料未修改,導致資料庫記憶體的資料不一致。
在插入、更新或刪除操作過程中當受影響的行數等於零時由 DataAdapter 引發的異常。
可能的解決方法:
1 、檢查是否設有主鍵。
2、 DeleteCommand的問題:檢查是否含有自動編號欄位(Access的自動編號欄位可能會引發此異常);
3、 UpdateCommand的問題:檢查更新的欄位的原始值是否為空值(原始空值更新時可能會引發此異常)。
在Update後新增 程式碼 Ds.AcceptChanges() Ds是記憶體中剛開始我們從資料庫中獲取來的DataSet
DataSet就是一個記憶體中的資料庫,所以當用SqlDataAdapter更新之後,資料庫的資料更新了,但是記憶體中並沒有,重要 的事情多說一次!!