最近有踩到這個雷,當使用 NHibernate 去存取資料庫時,你在變更的 Table 加上 Trigger, 而這個 Trigger 有去異動到資料,
那 NHibernate 的類似保護機制的東西就會噴這個錯誤:
Batch update returned unexpected row count from update; actual row count: 2; expected: 1
就算不懂英文拿去翻譯也知道他是說:「我只動了 1 Row,DB 卻說我動了 2 Row,這有問題,RollBack!」
既然這樣,應該有方法要 DB 不去計算 Trigger 所異動的 Row
經 Google 後查到了這個設定:
SET NOCOUNT ON
把它加到 Trigger 內的第一行,就可以解決這個問題了!
Puck Wang
Hi! 我是 Puck Wang,這個部落格的作者,是一位全端網站開發者,常使用 .Net 和 React 進行開發,專注於架構研究,你可以在這個部落格看到我精選的筆記內容,希望對你會有所幫助。
更多關於我的訊息,可至關於關於頁面。