Short: 在調用transaction.Commit()之後,下一個操作會失敗,就好像事務未提交一樣。SQL事務提交保持連接處於損壞狀態(c#)
更多詳細信息: 我們有一個線程對數據庫運行寫查詢,其中一些被封裝在一個事務中。 在一段時間後運行較重負載時,我們遇到提交事務後的操作失敗並顯示交易正在進行的錯誤情況,具體取決於提交後執行的操作,我們收到以下錯誤之一:
下一個操作是「開始事務:
...連接不支持並行事務...
下一個操作是插入/更新/刪除
的ExecuteNonQuery要求命令 有交易時分配給該命令的連接處於 未決本地事務。命令 的事務屬性尚未初始化。
通過調試器檢查Sql連接對象顯示它包含一個'sqlInnerTransaction'對象,它的父對象設置爲null。 我們確實知道,對'Commit'的調用成功完成,沒有錯誤。
運行.NET 4.0,SQL Server 2008 R2的SP2
你可以添加一些代碼嗎?交易如何開始並提交?是否有可能導致提交錯誤? – Andomar
我們使用sqlCon.BeginStransaction()和器transaction.commit() 我們正與伐木監測和附加的調試和第一異常被抓是一個上面寫的.. –
你或許應該調用Close()或Dispose()在每個(聯合)成功的Commit()之後。使用''語句最簡單。 –